2021年西安工业大学西北兵器工业研究院819数据结构与程序设计考研核心题库之算法设计题精编

特别说明

本书根据历年考研大纲要求并结合历年考研真题对该题型进行了整理编写,涵盖了这一考研科目该题型常考试题及重点试题并给出了参考答案,针对性强,考研复习首选资料。

版权声明

青岛掌心博阅电子书依法对本书享有专有著作权,同时我们尊重知识产权,对本电子书部分内容参考和引用的市面上已出版或发行图书及来自互联网等资料的文字、图片、表格数据等资料,均要求注明作者和来源。但由于各种原因,如资料引用时未能联系上作者或者无法确认内容来源等,因而有部分未注明作者或来源,在此对原作者或权利人表示感谢。若使用过程中对本书有任何异议请直接联系我们,我们会在第一时间与您沟通处理。

因编撰此电子书属于首次,加之作者水平和时间所限,书中错漏之处在所难免,恳切希望广大考生读者批评指正。

重要提示

本书由本机构编写组多位高分在读研究生按照考试大纲、真题、指定参考书等公开信息潜心整理编写,仅供考研复习参考,与目标学校及研究生院官方无关,如有侵权请联系我们立即处理。

一、2021年西安工业大学西北兵器工业研究院819数据结构与程序设计考研核心题库之算法设计题精编

1.编写子程序,将一维数组中的元素,按蛇形方式存放在二维数组

中。

即:

依此类推,如图所示。

【答案】算法如下:

2.试写出以带头结点单链表为存储结构实现简单选择排序的算法。

【答案】单链表定义如下:

算法如下:

3.已知Ackermann函数的定义如下:

(1)写出的计算过程。

(2)写出的非递归算法。

【答案】(1)

(2)程序描述如下:首先将m,n入栈,然后每次判断栈是否为空,如果不为空出栈放入中,如果此时栈空,则说明这是的最终值,返回该值,否则再次出栈放入j中,根据Ack(j,i)的各种情况:如果,直接将作为他们的返回值压入栈中;如果,则先压入,

再压入;如果均不为0,则先压入,再依次压入。

4.辅助地址表的排序是不改变结点物理位置的排序。辅助地址表实际上是一组指针,用它来指出结点排序后的逻辑顺序地址。设用表示n个结点的值,用表

示辅助地址表。初始时,在排序中,凡需对结点交换就用它的地址来进行。例如当n=3时,对则有。试编写实现辅助地址表排序(按非递减序)算法的语句序列。

【答案】算法描述如下:

相关文档
最新文档