- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
试卷参考答案
填空题
(1) N2 + 1 (2) 2N – 1 (3) 2
(4) 队空条件:front == rear 队满条件:(rear+1) % (m+1) == front
注:假设牺牲数组一个单元,只存放m 个元素
(6) 广度优先搜索 (8) 14
(9) 避免在插入和删除操作中将第一个结点看作是特殊结点,使程序编写简单。
基本思想如下:
存储结构:两个栈使用同一段内存空间,图示如下。栈1 只做 PUSH 操作,对应队列的进队;栈 2 只做 POP 操作,对应队列出队操作。
队列定义:
typedef struct{
int data[M];
int Top1;//栈 1 指针int Top2;//栈 2 指针
}SqQueue;
队列初始化: SqQueue q; q.Top1= -1; q.Top2=0;
进队操作:
if(q.Top1==M-1) printf(―队满!‖);
else q.data[++q.top1]=e;
出队操作:
if (q.Top2==q.Top1+1) printf(―队空!‖);
else e=q.data[q. top2++];
拓扑排序算法如下所示: void TopologicalSort(Graph g){
//有向图 g 采用邻接表存储结构
int indegree[MAX_VER];//定义各顶点入度数组 indegree[] int i,k,count;
SqQueue q; node *p;
FindIndegree(indegree,g);//求出所有顶点的入度
q=InitQueue();//建 0 入度顶点队列 q for(i=0;ig.vexnum;i++)
if(!indegree[i]) q=EnQueue(q,i);//入度为 0 者进队列count=0;//对输出顶点计数
while(!QueueEmpty(q))
{ q=DeQueue(q,k); printf(%3c,g.adjlist[k].vex); count++;//输出 k 号顶点并计数for(p=g.adjlist[k].firstarc;p;p=p-next)
{
}//while
}//for
--indegree[p-no];//对 k 号顶点的每个邻接点的入度减 1 if(!indegree[p-no])
q=EnQueue(q,p-no);//若入度为 0 则进队列
if(countg.vexnum)//该有向图有回路printf(\nThere is a circuit.);
}// TopologicalSort
对于有 n 个顶点,e 条边的有向图的拓扑排序算法的时间复杂性为O(n+e)
由于学号已经排好序,要求按学生成绩(总分)排名次,若总分相同,则学号在前的,仍排在前面,即要求选择的排序算法具有稳定性,分析具有稳定性的排序算法有如下4 种:
再从时间与空间去综合考虑,选择改进的冒泡排序好。算法如下:
void bubble_sort(int a[],int n){
int t=0,done=0; int i,j;
for(i=1;i=n-1!done;i++)
{
done=1; for(j=0;j=n-i-1;j++)
if(a[j]a[j+1])
{done=0; t=a[j]; a[j]=a[j+1]; a[j+1]=t; }
}
}
归并排序算法如下:
void Merge(int b[],int a[],int i,int m,int n){
//将有序的 b[i..m]和 b[m+1..n]归并为有序的 a[i..n] int j,k;
for(j=m+1,k=i;(i=m)(j=n);++k)
{
cmp++; if(b[i]b[j])
{a[k]=b[i++];change++;}
else {a[k]=b[j++];change++;}
}
while(i=m)
{a[k++]=b[i++];change++;}//将剩于的 b[i..m]复制到 a while(j=n)
{a[k++]=b[j++];change++;}//将剩余的 b[j..n]复制到 a
}// Merge
void MSort(int a[],int c[],int s,int t){
//将 a[s..t]归并排序为 c[s..t] int m;
int b[MAX]; if(s==t) c[s]=a[s]; else
{
}
}// MSort
m=(s+t)/2;//将 a[s..t]平分为 a[s..m]和 a[m+1..t]
MSort(a,b,s,m);//递归地将 a[s..m]归并为有序的 b[s..m] MSort(a,b,m+1,t)
您可能关注的文档
- 手捧空花盆的孩子.docx
- 手术器械的包装方法 .docx
- 手术室 优质护理服务工作计划.docx
- 手术室保洁员每日工作流程 清洁区.docx
- 手术室未来 护理展望.docx
- 手术室质控计划 .docx
- 手术室重点环节 重点人群 高危因素评估表.docx
- 手术学基础30道题目附答案!.docx
- 手术质量与安全分析总结 .docx
- 手指 物表 空气采样方法.docx
- 小学语文第三学段综合性学习教学现状及策略.docx
- 2024年全球及中国冠脉双导丝球囊扩张导管行业头部企业市场占有率及排名调研报告.docx
- 2024年全球及中国穿透式螺丝刀行业头部企业市场占有率及排名调研报告.docx
- 不同浓度NaCl处理对设施番茄生长发育及品质的影响.docx
- 2024年全球及中国抗生素浸渍关节垫片行业头部企业市场占有率及排名调研报告.docx
- 2024年全球及中国冷藏冷冻用商业冷柜行业头部企业市场占有率及排名调研报告_20250104_104.docx
- 2024-2030全球环氧树脂腻子行业调研及趋势分析报告.docx
- 2024年全球及中国胶原三肽补充剂行业头部企业市场占有率及排名调研报告.docx
- 2024年全球及中国恒温水浴摇床行业头部企业市场占有率及排名调研报告.docx
- 2024年全球及中国谷物搬运机械行业头部企业市场占有率及排名调研报告.docx
最近下载
- 没有违章、未发生责任事故等不良记录的证明参考模板范本.doc VIP
- 《说和做——记闻一多先生言行片段》教学设计.docx VIP
- 2025年哪吒精神开学第一课主题班会课件.pptx
- 2024年全国普通高等学校运动训练、民族传统体育专业单招统一招生考试语文模拟测试(一).docx
- 新闻伦理与法规课程教学大纲(本科).doc VIP
- 皮肤性病学课件:皮肤的结构功能.ppt VIP
- 2024年全国普通高等学校运动训练、民族传统体育专业单招统一招生考试政治模拟测试(四).docx
- SONY索尼家庭音频系统HT-Z9F使用说明书.pdf
- 2024年全国普通高等学校运动训练、民族传统体育专业单招统一招生考试语文模拟测试(三).docx
- 2024年全国普通高等学校运动训练、民族传统体育专业单招统一招生考试语文模拟测试(十).docx
文档评论(0)