- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
PAGE 5
习题答案
一、选择题
1-5 B、B、D、B、B 6-10 B、A、D、BD、C、
二、填空题
1、先进后出,先进先出
2、23.12.3*2-4/34.5*7/++108.9/+
3、假溢出
4、rear=(rear+1)%n
s=new Lnode(x);
s-next=r-next;r-next=s;r=s
5、O(1),O(n),O(1),O(1)
三、判断题
对错对对对
四、应用题
三个:CDEBA,CDBEA,CDBAE
435612不可以321, 325641可以, 154623不可以 432, 135426可以
Rear=4和front=2
队列为满的条件:(rear + 1) % MaxSize == front
队列为空的条件: front == rear
5、(1)A*B*C (2)(A+B)*C-D (3)A*B+C/(D-E) (4)(A+B)*D+E/(F+A*D)+C
(1)ABC** (2)AB+C*D- (3)AB*CDE-/+ (4)AB+D*EFAD*+/C+
五、算法设计题
1、
#define maxsize 100 //两栈共享顺序存储空间所能达到的最多元素数
#define ElemType int ∥假设元素类型为整型
typedef struct
{ ElemType stack[maxsize];∥栈空间
int top[2]; ∥top为两个栈顶指针
}stk;
stk s; ∥s是如上定义的结构类型变量,
//为全局变量
入栈操作:
int push(int i,int x)
∥入栈。i=0表示左栈s1,i=1表示右栈s2,x是入栈元素。入栈成功返回1,否则返回0
{ if(i0||i1){printf(“栈号输入不对\n”);exit(0);}
if(s.top[1]-s.top[0]==1) {printf(“栈已满\n”);return(0);}
switch(i)
{ case 0: s.stack[++s.top[0]]=x; return(1); break;
case 1: s.stack[--s.top[1]]=x; return(1);
}
}∥push
退栈操作:
ElemType pop(int i)
∥退栈算法。i=0时为s1栈,i=1时为s2栈。退栈成功返回退栈元素,否则返回-1
{ if(i0 || i1){printf(“栈号输入错误\n”);exit(0);}
switch(i)
{ case 0: if(s.top[0]==-1) {printf(“栈空\n”);return(-1);}
else return(s.stack[s.top[0]--]);
case 1: if(s.top[1]==maxsize){printf(“栈空\n”); return(-1);}
else return(s.stack[s.top[1]++]);
}∥switch
}∥算法结束
判断栈空
int Empty();
{ return (S.top[0]==-1 S.top[1]==m);
}
2、
(1) 初始化
SeQueue QueueInit(SeQueue Q)
{//初始化队列
Q.front=Q.rear=0; Q.tag=0;
return Q;
}
(2)入队
SeQueue QueueIn(SeQueue Q,int e)
{//入队列
if((Q.tag==1) (Q.rear==Q.front))
printf(队列已满\n);
?? else { Q.rear=(Q.rear+1) % m;
Q.data[Q.rear]=e;
if(Q.tag==0) Q.tag=1; //队列已不空
}
return Q;
}
(3)出队
ElemType QueueOut(SeQueue Q)
{//出队列
if(Q.tag==0) { printf(队列为空\n); exit(0);}
?? else
{ Q.front=(Q.front+1) % m;
e=Q.data[Q.front];
if(Q.front==Q.rear) Q.tag=0; //空队列
}
return(e);
}
3、
(1)循环队列的定义
typedef struct
{ Elem
您可能关注的文档
- 智慧供应链 课件 第1章 智慧供应链概述.pptx
- 智慧供应链 课件 第2章 智慧供应链的需求预测.pptx
- 第3章 智慧供应链的订单与排产.pptx
- 智慧供应链 课件 第5章 智慧供应链的智能制造.pptx
- 智慧供应链 课件 第6章 智慧供应链的智慧物流.pptx
- 智慧供应链 课件 第7章 智慧供应链的逆链和溯源.pptx
- 智慧供应链 课件 第8章 智慧供应链的脱碳.pptx
- 智慧供应链 课件 第9章 智慧供应链的韧性.pptx
- 智慧供应链 课件 第10章智慧供应链金融.pptx
- 《智慧供应链》 习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第4章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第5章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第6章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第7章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第8章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第9章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第10章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第11章课后习题答案.docx
- 算法与数据结构(C++语言版)(冯广慧第2版)习题及答案 第12章课后习题答案.docx
- 计算机信息素养 课件 单元1零距离领略信息技术.pptx
文档评论(0)