1、栈树队列Data and data structure数据与数据结构(二)队列树栈Data and data structurel 课前回顾课前回顾 数组的特点?不仅需要描述数据对象本身,还需要描述数据所处的位置或者数据之间的前后顺序关系 链表的特点?只需知道数据之间相互链接的顺序栈树队列Data and data structurel 课前回顾课前回顾 何为单向链表、双向链表、基于单向链表的循环链表?单向链表双向链表基于单向链表的循环链表栈树队列Data and data structure栈树队列l 常见的数据结构常见的数据结构队列队列有序排队上车的乘客有序排队接客的出租车 乘客排队时先到
2、的总是从队伍的头部出去(出队)上车,而后到的乘客则必须在队伍的尾部加入(入队)。同时,为了确保有序,人们总是规定不能从队伍的中间部位插队。Data and data structure栈树队列l 常见的数据结构常见的数据结构队列队列 用计算机程序处理数据时,有时也需要将数据进行“排队”,并遵循现实中排队的规律,对数据进行“先进先出”FIFO(First In First Out)且中间不能“插队”的组织和操作,计算机科学家由此发明了“队列”这种数据结构。先进先出Data and data structure栈树队列l 常见的数据结构常见的数据结构队列队列先进先出Data and data st
3、ructure栈树队列l 常见的数据结构常见的数据结构栈栈弹匣的装弹过程(入栈)栈的示例弹匣子弹进出弹匣的过程具有下列特点:整个装置只有一端开放(最上端),而且进、出只能在这一端进行。弹匣中的子弹成一纵队排列。任何子弹进出弹匣的规律是“先进后出、后进先出”,即最先装入弹匣的子弹最后才能被弹出,而最后装入弹匣的子弹则最先被弹出。先进后出、后进先出Data and data structure栈树队列l 常见的数据结构常见的数据结构栈栈先进后出、后进先出栈的示例弹匣 子弹是数据元素 弹匣是栈结构 子弹只从一个头即栈顶进出 装弹过程是Push入栈 开枪过程是Pop出栈在这里,压与弹体现这两个字的真正
4、含义Data and data structure栈树队列l 活动一:快递拿取活动一:快递拿取栈栈2 2Data and data structurel 常见的数据结构常见的数据结构树树一个元素前面(或上面)只有一个元素,而后面(或下面)却有多个(0个或多个)元素相邻,所有的数据元素之间的特征就像一棵倒放的树。栈树队列Data and data structurel 常见的数据结构常见的数据结构树树栈树队列Data and data structure栈树队列l 活动二:树活动二:树一、分小组讨论,举出在生活和信息系统中用树组织数据的例子。二、画出其他树结构编队图Data and data structurel 巩固练习巩固练习B BB B栈树队列Data and data structurel 巩固练习巩固练习C CB B栈树队列Data and data structurel 巩固练习巩固练习数组数组栈树队列Data and data structure栈树队列l 课堂小结课堂小结Data and data structurel 课堂小结课堂小结 队列的特点?先进先出,不能插队 栈的特点?先进后出,后进先出 树的特点?一个元素前面(或上面)只有一个元素,而后面(或下面)却有多个(0个或多个)元素相邻栈树队列数据与数据结构(二)Data and data structure