摘要:
数据结构栈(Stack)和队列(Queue)详解 本章讲解了两种特殊的线性表结构——栈和队列。读者要重点理解栈的“先进后出”原则和队列的“先进先出”原则,体会两种特殊的线性表结构的应用场景。 本章内容: 1. 栈(Stack)的概念和应用及C语言实现 2. 数据结构实践项目之进制转换器 3. 括号匹配算法及C语言实现 4. 队列(Queue):“先进先出”的数据结构 5. 数据结构实践项目之... 阅读全文
posted @ 2018-05-12 17:04
程序员进阶笔记
阅读(660)
评论(0)
推荐(0)
摘要:
俄罗斯轮盘赌,想必很多人都听说过,一种残忍的赌博游戏。游戏的道具是一把左轮手枪,其规则也很简单:在左轮手枪中的 6 个弹槽中随意放入一颗或者多颗子弹,在任意旋转转轮之后,关上转轮。游戏的参加者轮流把手枪对着自己,扣动扳机:中枪或是怯场,即为输的一方;坚持到最后的即为胜者。 本节实践项目同轮盘赌类似, 阅读全文
posted @ 2018-05-12 16:38
程序员进阶笔记
阅读(2599)
评论(0)
推荐(0)
摘要:
之前接触到的链表都只有一个指针,指向直接后继,整个链表只能单方向从表头访问到表尾,这种结构的链表统称为 “单向链表”或“单链表”。 如果算法中需要频繁地找某结点的前趋结点,单链表的解决方式是遍历整个链表,增加算法的时间复杂度,影响整体效率。为了快速便捷地解决这类问题,在单向链表的基础上,给各个结点额 阅读全文
posted @ 2018-05-12 11:23
程序员进阶笔记
阅读(1462)
评论(0)
推荐(0)
摘要:
链表的使用,还可以把链表的两头连接,形成了一个环状链表,称为循环链表。 和它名字的表意一样,只需要将表中最后一个结点的指针指向头结点,就形成了一个环。 图1 循环链表 循环链表和动态链表相比,唯一的不同就是循环链表首尾相连,其他都完全一样。 实际应用:约瑟夫环问题 约瑟夫环问题,是一个经典的循环链表 阅读全文
posted @ 2018-05-12 11:04
程序员进阶笔记
阅读(3023)
评论(0)
推荐(0)
摘要:
本节继续介绍线性表的另外一种链式表示——静态链表。(前面介绍的链表称为 动态链表 )。逻辑结构上相邻的数据元素,存储在指定的一块内存空间中,数据元素只允许在这块内存空间中随机存放,这样的存储结构生成的链表称为静态链表。 静态链表和动态链表的区别:静态链表限制了数据元素存放的位置范围;动态链表是整个内 阅读全文
posted @ 2018-05-12 10:50
程序员进阶笔记
阅读(8448)
评论(0)
推荐(0)

浙公网安备 33010602011771号