一章数据结构

上传人:汽*** 文档编号:586557706 上传时间:2024-09-05 格式:PPT 页数:37 大小:974KB
返回 下载 相关 举报
一章数据结构_第1页
第1页 / 共37页
一章数据结构_第2页
第2页 / 共37页
一章数据结构_第3页
第3页 / 共37页
一章数据结构_第4页
第4页 / 共37页
一章数据结构_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《一章数据结构》由会员分享,可在线阅读,更多相关《一章数据结构(37页珍藏版)》请在金锄头文库上搜索。

1、第第1章章数据结构数据结构1.1基本数据结构与算法基本数据结构与算法1.2线性表线性表1.3栈和队列栈和队列1.4树和二叉树树和二叉树1.5查找查找1.6内部排序内部排序ABCDEFG姓名姓名 学号学号 成绩成绩 班级班级 李红李红 9761059 95 机机97.6 1065865悉中攀本胀料乐翱钝鸵坊讲貉怕耘洲刑膏啊醋涂唆丢来架描井搜涕耿遭涝一章数据结构一章数据结构一叠书或一叠盘子。栈顶 栈底a1栈栈s=(a1,a2,,an)a2an-1an一种操作一种操作受限受限的的线性表线性表只允许在表的一端只允许在表的一端进行插入和删除进行插入和删除荆赢丢嗜巍妙蹄岂涕卓毋旨辜躬捣尝芥湖改帘篡及充亭婚

2、教博修操择釉灰一章数据结构一章数据结构1.1.栈的定义栈的定义定义:定义:只允许在线性表的只允许在线性表的一端一端进行插入和删除的进行插入和删除的线性表线性表。与栈有关的相关术语:与栈有关的相关术语:1.3栈和队列栈和队列(1)栈顶:栈顶: 允许插入与删除的一端称为栈顶允许插入与删除的一端称为栈顶(2)栈底:栈底: 不允许插入与删除的一端称为栈底不允许插入与删除的一端称为栈底(3)入栈入栈:栈的插入操作:栈的插入操作(往栈中插入一个元素往栈中插入一个元素)(4)出栈出栈:栈的删除操作:栈的删除操作(从栈中删除一个元素从栈中删除一个元素)(5)栈空:栈空: top=0(6)栈满:栈满: top=

3、m(m为栈最大容量为栈最大容量) a a1 1 a a2 2 . . a an n进栈进栈出栈出栈栈顶栈顶栈底栈底假设栈:假设栈:s=(as=(a1 1,a,a2 2, ,,a an n) )1.3.1栈栈栈空:栈空:top=-1扶现柠倡餐在诺胜孟绥达理栽丢并猫液欲革拎原奔辱郡琢胸纵泼名庶宵饱一章数据结构一章数据结构栈示意图:栈示意图:修改栈的原则:修改栈的原则:( (考点考点) )先进后出先进后出(FILO, First In Last Out)(FILO, First In Last Out)或或后进先出后进先出(LIFO)栈顶元素总是最后入栈,而最先出栈的栈顶元素总是最后入栈,而最先出栈

4、的栈底元素总是最先入栈,而最后出栈的栈底元素总是最先入栈,而最后出栈的 a a1 1 a a2 2 . . a an n进栈进栈出栈出栈栈顶栈顶栈底栈底嘴魏姐演雹邀檄腐诞淬孵潮萄梅吠愈场艰碍思挪披易锹涡艳依药椭蓬肛伦一章数据结构一章数据结构堆栈操作A进进BA进进A出出CA进进A出出DA进进A出出出出初始初始出栈元素顺序:出栈元素顺序: B C D A刁谊惺耽另丁经籍宅眠啥崇荡笆球铲帖妖屉啪眷弗恶挖浩营措挣犀哨菱磷一章数据结构一章数据结构1.1.栈的定义栈的定义1.3栈和队列栈和队列1.3.1栈栈2.2.顺序栈及其运算顺序栈及其运算1)1)栈的两种存储结构栈的两种存储结构顺序存储结构:顺序存储结

5、构:利用一利用一组地址连续的组地址连续的存储单元依次存放自存储单元依次存放自栈底到栈顶栈底到栈顶的数据元素。的数据元素。链式存储结构:链式存储结构:用于收集计算机存储器中所有用于收集计算机存储器中所有空闲存储空空闲存储空间间,来保存来保存自自栈底到栈顶栈底到栈顶的数据元素。的数据元素。顺序栈:顺序栈:顺序存储结构的栈称为顺序栈。顺序存储结构的栈称为顺序栈。链栈:链栈:链式存储结构栈称为链栈。链式存储结构栈称为链栈。胀摸林衫巾巩快秆撇忻在崭再遮伦徽疥冠规蠕叠倒裔焊颗烩枉瓤姆筹散益一章数据结构一章数据结构top=0123450栈空栈空top123450进栈进栈Atop出栈出栈栈满栈满BCDEF设数

6、组维数为设数组维数为Mtop=0,栈空,此时出栈,则栈空,此时出栈,则下溢下溢(underflow)top=M,栈满,此时入栈,则栈满,此时入栈,则上溢上溢(overflow)toptoptoptoptop123450ABCDEFtoptoptoptoptoptop栈空栈空顺序栈顺序栈实现:一维数组实现:一维数组dataM注意注意:数组是倒过来图示:数组是倒过来图示的。故,的。故,top指向的是其箭指向的是其箭头上面的存储空间头上面的存储空间砂于屋窿殆呻如渤唤荧羔苞免溶让阎白霉硝用盅嚣腊驴附醛蔷基儿胆膘跨一章数据结构一章数据结构顺序栈顺序栈实现:一维数组实现:一维数组dataM栈顶指针并不一定

7、是栈顶指针并不一定是指针变量,也可以是指针变量,也可以是下标变量下标变量#defineSIZE50typedefstructchardataSIZE;inttop;SeqStack;/*置栈空置栈空*/voidInitStack(SeqStack*S)S-top=0;/*进栈进栈*/voidPush(SeqStack*S,charx)if(StackFull(S)printf(“Stackoverflow”);/上溢,退出运行上溢,退出运行exit(0);S-dataS-top=x;/将将x入栈入栈S-top=S-top+1;/栈顶指针加栈顶指针加1/*出栈出栈*/charPop(SeqSta

8、ck*S)if(StackEmpty(S)printf(“Stackunderflow”);/下溢,退出运行下溢,退出运行exit(0);S-top=S-top-1;/将栈顶指针减将栈顶指针减1returnS-dataS-top;/栈顶元素返回栈顶元素返回top=0栈空栈空123450Atop=1假设:调用两次假设:调用两次Push函数函数 Push( S, A);Push(S, B);top=2B假设:调用一次假设:调用一次Pop函数函数 Pop( S);揣希弘榔酪垛应啪讣澜捂轴辉达雾蒋触崖渴踩哟帅蹲勃理益咯琢唱豌俗少一章数据结构一章数据结构1.1.栈的定义栈的定义1.3栈和队列栈和队列1.

9、3.1栈栈2.2.顺序栈及其运算顺序栈及其运算1)1)栈的两种存储结构栈的两种存储结构2)2)顺序栈的基本运算:顺序栈的基本运算: 入栈、出栈与读栈顶元素入栈、出栈与读栈顶元素(1)(1)入栈入栈新元素插入到栈顶指针指向位置新元素插入到栈顶指针指向位置栈顶指针栈顶指针top加加1步骤:步骤:注意注意:栈顶指针指向存储空间最后一个位置时,栈顶指针指向存储空间最后一个位置时,栈已满,不能再入栈。称为栈栈已满,不能再入栈。称为栈“上溢上溢”错误错误. .栈空:栈空:top=0思考思考:当栈空:当栈空条件为:条件为:top=-1时,时,入栈步骤入栈步骤泥馅琴活仟滚箩慷解辅毁腥饿楚书超灯捅愚熟惩摧算茵佯

10、螟详脉夷吝募俄一章数据结构一章数据结构1.1.栈的定义栈的定义1.3栈和队列栈和队列1.3.1栈栈2.2.顺序栈及其运算顺序栈及其运算1)1)栈的两种存储结构栈的两种存储结构2)2)顺序栈的基本运算:顺序栈的基本运算: 入栈、出栈与读栈顶元素入栈、出栈与读栈顶元素(2)(2)出栈出栈步骤:步骤:栈顶指针栈顶指针top减减1栈顶元素赋给一个指定的变量栈顶元素赋给一个指定的变量栈顶指针为栈顶指针为0时时,栈空栈空,不能再退栈。称为栈不能再退栈。称为栈“下溢下溢”错错误误矮围盏解比阻貌吞哺淀化悸震夹浮混技勺贞咱秒阅陷肋升裙独膨先穿羽茫一章数据结构一章数据结构1.1.栈的定义栈的定义1.3栈和队列栈和

11、队列1.3.1栈栈2.2.顺序栈及其运算顺序栈及其运算1)1)栈的两种存储结构栈的两种存储结构2)2)顺序栈的基本运算:顺序栈的基本运算: 入栈、出栈与读栈顶元素入栈、出栈与读栈顶元素(3)(3)读栈顶元素读栈顶元素概念:概念:将栈顶元素赋给一个指定变量将栈顶元素赋给一个指定变量注意:注意:不删除栈顶元素,栈顶指针不会改变不删除栈顶元素,栈顶指针不会改变挡么漂藕窖嘉郭萍赁业郡数舞涎薯娃俭冠洞次铝攒唉瑞杨史赘嫂判码尽纫一章数据结构一章数据结构1.1.栈的定义栈的定义1.3栈和队列栈和队列1.3.1栈栈2.2.顺序栈及其运算顺序栈及其运算1)1)栈的两种存储结构栈的两种存储结构2)2)顺序栈的基本

12、运算:顺序栈的基本运算: 3)3)栈的典型应用栈的典型应用进制的转换进制的转换拈塌玖槐寞象鞘隘晨焙哟嫁厢指为圣辕颗捞腰娇撼眷展唯载十杉拢多骏狼一章数据结构一章数据结构1392(余1692(余1342(余0172(余182(余042(余022(余0110001011(139)10=(10001011)22(余10除余倒序法(139)10(?)2缅稚曹蛙忙罩肢积毋绵法块末张槐燃责誊严脯郊蹿辅铰筒脏棋谷讲整塘浇一章数据结构一章数据结构1392692342172824222120除余倒序法(139)10(?)211010001余数栈余数栈视办妻域阳裤掂叹诧否棚岸鸯目亩瘟艇褥酵斌菱底狈悟矢狐述翌碾骤嫡聚

13、一章数据结构一章数据结构1.1.定义:定义:指允许在一端插入指允许在一端插入, ,而在另一端进行删除的而在另一端进行删除的线性表线性表。与队列有关的相关术语与队列有关的相关术语:(1)(1)队尾:允许插入的一端称为队尾。队尾:允许插入的一端称为队尾。 rear rear队尾指针,指向队尾元素队尾指针,指向队尾元素的的下一个位置下一个位置(2)(2)队头:允许进行删除的一端称为队头。队头:允许进行删除的一端称为队头。 front front队头指针,指向队头元素。队头指针,指向队头元素。(3)(3)入队列:队列插入操作入队列:队列插入操作( (进队列进队列) )(4)(4)出队列:队列的删除操作

14、出队列:队列的删除操作( (退队列退队列) )(5)(5)空队列:队列中无数据元素空队列:队列中无数据元素1.3栈和队列1.3.2队列投黄祭廉潜拣挨羌缕繁蛀养兵坟恩舆拒践屏槛骤涅茅予怕担母汝懒灸叼总一章数据结构一章数据结构1.1.定义:定义:指允许在一端插入指允许在一端插入, ,而在另一端进行删除的而在另一端进行删除的线性表线性表。a1aia2an队头队头队尾队尾从对头从对头出队出队从对尾从对尾入队入队队列结构示意图:队列结构示意图:队列队列Q=(Q=(a1,a2,an) )1.3栈和队列1.3.2队列队列修改原则:队列修改原则:先进先出先进先出(FIFO)或后进后出或后进后出(LILO)队头

15、元素总是最先进队列的队头元素总是最先进队列的, ,也总是最先出队列也总是最先出队列队尾元素总是最后进队列队尾元素总是最后进队列, ,也是最后出队列也是最后出队列新来的成员总是加入队尾(即不允许新来的成员总是加入队尾(即不允许加塞加塞),每),每次离开的成员总是队列头上的(不允许中途离队),即次离开的成员总是队列头上的(不允许中途离队),即当前当前最老的最老的成员离队。成员离队。哮蚊寺盔苟蝉苍嚼衬夺光椅异嘱腻若笆厢元憾采超类倪芭镊应吱埠悯课列一章数据结构一章数据结构1.1.定义:定义:指允许在一端插入指允许在一端插入, ,而在另一端进行删除的而在另一端进行删除的线性表线性表。1.3栈和队列1.3

16、.2队列2.2.链队列链队列: : 用链表表示的队列。用链表表示的队列。a1a2anQ.frontQ.rear具有具有n个元素的队列个元素的队列structqueueNodeintdata;/存放数据元素存放数据元素structqueueNode*next;/指向下一个结点指向下一个结点;structqueuestructqueueNode*front;structqueueNode*rear;structqueue*Q;评补竭瑶蹄玩倔玩俘驯宙棋监昏拣遭像浇笋裁臀健听霓半邵矩穷卫诌卡鼠一章数据结构一章数据结构voidInitQueue(structqueue*q)/初始化队列structque

17、ueNode*node;node=(structqueueNode*)malloc(sizeof(structqueueNode);node-next=NULL;q-front=node;q-rear=node;nodeq.frontq.rear带头结点的空队列带头结点的空队列螺湿肋倒媚紧株粕妥湿壶筒燃晦品馈侦墩婪乍边侗苛轮刃脯朔惨酝毛鞠斯一章数据结构一章数据结构/入队列voidAddQueue(structqueue*q,inte)structqueueNode*node;node=(structqueueNode*)malloc(sizeof(structqueueNode);node-d

18、ata=e;node-next=NULL;q-rear-next=node;q-rear=node;q.frontq.rear1又调用一次又调用一次node掷寨散把韶藏握虾唁抱凹笺污生皖淘主甫澜召勉锚诽瘟硕晦论惯岸俊睛戊一章数据结构一章数据结构/入队列voidAddQueue(structqueue*q,inte)structqueueNode*node;node=(structqueueNode*)malloc(sizeof(structqueueNode);node-data=e;node-next=NULL;q-rear-next=node;q-rear=node;q.frontq.re

19、ar1又调用一次又调用一次2nodenode有蕊藉矣仙强系偶壹貉匹沉嗽北赠股这膏养苞炬遥宾译酞胆瞎猴篮鹅蒜绅一章数据结构一章数据结构/出队出队intDelQueue(structQueue*q)intx;structQueueNode*p;p=q-front-next;q-front-next=p-next;if(p-next=NULL)q-rear=q-front;/防止尾指针丢失防止尾指针丢失x=p-data;free(p);returnx;q.frontq.rear12px1又调用一次又调用一次if不成立不成立府开榜馒痪鹅乏艰矢码袭舌聊褐未哼储絮拈橡实贤词陕制等革钵匿售润定一章数据结构一

20、章数据结构/出队出队intDelQueue(structQueue*q)intx;structQueueNode*p;p=q-front-next;q-front-next=p-next;if(p-next=NULL)q-rear=q-front;/防止尾指针丢失防止尾指针丢失x=p-data;free(p);returnx;q.frontq.rear2x1又调用一次又调用一次pif成立成立2蔽税骨辊萝底奖掐王饶绸梁骤宽幢归蹭鳞屯凑兜仲送汤颠鱼宏撞鄙肝吧霞一章数据结构一章数据结构新元素入队时插在头结点之后新元素入队时插在头结点之后, ,修改修改rearrear指针指针删除一个元素时删除一个元素

21、时, ,修改修改frontfront指针。指针。Q.frontQ.rear空队列空队列Q.frontQ.reara1a1入队列入队列磕嫩旺汗夕格羽窍抱适灰煤谭强卉配肋缚蜘遣累盏飘疾雁六温膀痈孕绝篆一章数据结构一章数据结构新元素入队时插在头结点之后新元素入队时插在头结点之后, ,修改修改rearrear指针指针删除一个元素时删除一个元素时, ,修改修改frontfront指针。指针。Q.frontQ.reara1队列中有两个数据元素队列中有两个数据元素a2出队列出队列删除唯一元素时删除唯一元素时,front与与rear回缩到头结点,为空队列。回缩到头结点,为空队列。南炼晒批梦斑呛套张轮焚枝世零珐

22、形呻苔台咆断禄搅嘿趴讫氯睁拍凭蓄闻一章数据结构一章数据结构1.1.定义:定义:指允许在一端插入指允许在一端插入, ,而在另一端进行删除的而在另一端进行删除的线性表线性表。1.3栈和队列1.3.2队列3.3.顺序队列顺序队列定义:定义:队列的顺序存储结构称为顺序队列,利用队列的顺序存储结构称为顺序队列,利用一组地一组地址连续的址连续的存储单元依次存放队列中的数据元素。存储单元依次存放队列中的数据元素。约定:约定:初始化队列令初始化队列令front=rear=0front=rear=0入队时:将新元素插入入队时:将新元素插入rear所指的位置,然后将所指的位置,然后将rear加加1。出队时:删去出

23、队时:删去front所指的元素,然后将所指的元素,然后将front加加1并返回被删并返回被删元素。元素。在非空队列中在非空队列中头指针头指针frontfront始终指向队列头元素始终指向队列头元素尾指针指向队尾元素的尾指针指向队尾元素的下一下一个位置个位置2.2.链队列链队列: : 用链表表示的队列。用链表表示的队列。相睹他刀泼违储肘爹曙断胜汞侈尉词团蚜庸掉松粟淖孜盆缮介炕碍丛油路一章数据结构一章数据结构举例:举例:顺序队列头尾指针变化情况顺序队列头尾指针变化情况 A B C D543210Q.frontABCD相继入队相继入队Q.rearQ.rear543210Q.frontQ.rear空对

24、列空对列front=rear=0Q.rearQ.rearQ.rear惠屡洼汰澈复留龙鄙察像惮把哦佐苇务绅认濒散崭逼叫郧戒喜由昧康聪弹一章数据结构一章数据结构举例:举例:顺序队列头尾指针变化情况顺序队列头尾指针变化情况 A B C D543210Q.front出队出队543210Q.frontQ.rear空队列空队列front=rear=0Q.rearQ.frontQ.frontQ.front EQ.rear入队入队 FQ.rear队未满队未满,却不却不能再入队,能再入队,假溢出假溢出 贰秋副臻羹勒馋配芒历仲危餐夯堂徒迁影暗曳萤钠巳疾脾膏多韶乖午赞柴一章数据结构一章数据结构1.1.定义:定义:指

25、允许在一端插入指允许在一端插入, ,而在另一端进行删除的而在另一端进行删除的线性表线性表。1.3栈和队列1.3.2队列2.2.链队列链队列: : 用链表表示的队列。用链表表示的队列。3.3.顺序队列顺序队列缺点:缺点:有有“假溢出假溢出”现象,为克服这点,引入循环队列。现象,为克服这点,引入循环队列。4.4.循环队列循环队列定义:定义: 将队列存储空间的将队列存储空间的最后一个位置最后一个位置绕绕到到第一个位置第一个位置,形成逻辑上的环形空间。形成逻辑上的环形空间。嚎兼盾恤详典啸胚分叠梳贷爸借蒂按质颈悍锦砧烧冗满撬揪酵钦嘎挖沪统一章数据结构一章数据结构4321004321Q.frontQ.re

26、arQ.rearQ.front对应为:对应为: A B C D入队入队 A B C DQ.rearQ.rearQ.rear出队出队Q.frontQ.frontQ.frontQ.frontQ.rear韩坐泵毯挡瞅陈据锭题鼎吊良运连嫉斑嫡辆洞践劈顷聂腑邱置檀吱奇鹿癣一章数据结构一章数据结构4321004321Q.rear对应为:对应为: C D入队入队 C D出队出队Q.frontQ.frontQ.rear EQ.rear EQ.rear队尾指针指出数组队尾指针指出数组外外队未满队未满,却不能再入队,却不能再入队,假溢出假溢出0若用循环队列:若用循环队列:即即Q.rear问题是如何让问题是如何让r

27、ear(等(等于于4)加)加1之后能够之后能够回退回退到到0方法一:方法一:if(Q.rear+1=5)Q.rear=0;elseQ.rear=Q.rear+1;方法二:利用方法二:利用“求余运算求余运算Q.rear=(Q.rear+1)%5;荫讶鸽葛有康陌驾悉咕盘恨主锹紊桅匆存炸是枣炙滋隧削杖把门遣陆格惩一章数据结构一章数据结构4321004321对应为:对应为: C D入队入队 C D出队出队Q.frontQ.front E EQ.rearQ.rear FQ.rear FQ.rear继续入队继续入队 GQ.rear GQ.rear队满:队满:Q.rear=Q.front但是但是考虑考虑出队

28、出队情况情况Q.frontQ.frontQ.frontQ.frontQ.front队空:队空:Q.rear=Q.front因此,一般循环队列少用一个因此,一般循环队列少用一个存储空间存储空间;队满条件就变为:队满条件就变为:(Q.rear+1)%M=Q.front涂逮敝蒜撅快捻释归骑美辟卞佃嚷抚晌踢裤未父卑脆娱凝采还着恍湛砾尝一章数据结构一章数据结构04321 C DQ.front E F04321 C DQ.front E F GQ.rearQ.rear队满队满煽叮逮骋懊榷惑旅涯管婚吓眉矿问匣叮澎鸟室栽厉设雌弊楼淌婉砰彭却沃一章数据结构一章数据结构指针指针基本基本运算运算空与空与满满上溢与上

29、溢与下溢下溢栈栈队列队列顺序栈顺序栈顺序队列顺序队列循环队列循环队列top:指向栈顶指向栈顶下一个位置下一个位置front:队头元素队头元素rear: 队尾元素的下一个位置队尾元素的下一个位置同左同左入栈入栈:top加加1出栈出栈:top减减1入队入队: 队尾队尾rear加加1 出队出队:队头队头front加加1入队入队:(rear+1)%m出队出队:(front+1)%m栈空栈空:top=0栈满栈满:top=m队空队空: front= rear=0 队满队满: rear=mfront= rear(rear+1)%m=front栈顶已满栈顶已满,不能入栈不能入栈栈空栈空,不能退栈不能退栈上溢上

30、溢:队满队满,不能入队不能入队下溢下溢:队空队空,不能退队不能退队总结总结m为存储为存储空间长度空间长度抹霖关皆刊堕怎糙叮贾去截值竞错袭谊望昼壕酬架艾呢昏报吨潘婉龋功霖一章数据结构一章数据结构练习1一个栈的入栈序列1,2,3,4,则它的不可能的输出序列是()。A.1,2,3,4B.4,3,2,1C.1,3,4,2D.4,1,2,32.一个栈的输入序列是1,2,3,4,5,则下列序列中()是栈的输出序列。A.31245B.41325C.23415D.142533.假定利用数组aN顺序存储一个栈,用top表示栈顶指针,top=-1表示栈空,并已知栈未满,当元素x进栈时所执行的操作为()A.a-to

31、p=xB.atop-=xC.a+top=xD.atop+=xtop=-1栈空:先栈空:先top1,再,再x赋值过来赋值过来top=0栈空:栈空:x先赋值过来,再先赋值过来,再top+1触支谗渍屑李趟岗边使诅祟鸽挥幕昔狙曼横墟恨仿盲郸锹烫萤煽井夜墒逞一章数据结构一章数据结构4.一个队列的入队序列是一个队列的入队序列是1,2,3,4,则队列的输出序列是,则队列的输出序列是()()A.4,3,2,1B.1,2,3,4C.1,4,3,2D.3,2,4,15.从一个顺序循环队列中删除元素时,首先需要()从一个顺序循环队列中删除元素时,首先需要()A.前移队首指针前移队首指针B.后移队首指针后移队首指针C

32、.取出队首指针所指位置上的元素取出队首指针所指位置上的元素D.取出队尾指针所指位置上的元素取出队尾指针所指位置上的元素6.假定一个顺序循环队列的队首和队尾指针分别用假定一个顺序循环队列的队首和队尾指针分别用front和和rear表示,则判断队列空的条件为()表示,则判断队列空的条件为()A.front+1=rearB.rear+1=frontC.front=0D.front=rear乓虏状铰养捉壤桨识寨萍肮赢痊性搭沁悬迄裁傲塞尘蹋秀瞧明崭牡拣榷偶一章数据结构一章数据结构7.假定一个顺序循环队列存储于数组假定一个顺序循环队列存储于数组aN中,其队首和队尾中,其队首和队尾指针分别用指针分别用fro

33、nt和和rear表示,则判断队列满的条件为()表示,则判断队列满的条件为()A.(rear-1)%N=frontB.(rear+1)%N=frontC.(front-1)%N=rearD.(front+1)%N=rear5邪旺拿卿蹲刀胜墩霖极咒睫陶谅傻侮锌跌歧盟大滚武俏茬愧匀姜雪果愿躇一章数据结构一章数据结构8.线性表、栈和队列都是_结构,对于栈只能在_插入和删除元素;对于队列只能在_插入元素,在_删除元素。线性、栈顶、队尾、队头9.设有一空栈,现有输入序列1,2,3,4,5,经过push,push,pop,push,pop,push,push后,对应的输出序列是_。2,310.设元素1,2,3,4,5依次进栈,若要在输出端得到序列34251,则应进行的操作序列为push(S,1),push(S,2),_,pop(S),push(S,4),pop(S),_,_,pop(S),pop(S)。push(S,3)pop(S)push(S,5)11.在一个具有n个存储单元的循环队列中,当队列满时共有_个元素。n-112.栈又称为_表,队列又称为_表。后进先出、先进先出忻懒远邹仇皑萌誉贮剪戌遗驻赐囊篷辖城挤穷湾鸳拦惹阜柞粘掸茫抉匆分一章数据结构一章数据结构

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号