题目内容
(请给出正确答案)
[主观题]
直接插人排序算法可以基于链表来实现。假设有一个数据随机排列的带表头结点的单链表L,试设计一个基于链表的直接插人排序算法,排序后的单链表仍然占用原来的空间。
答案
查看答案
第1题
下列内部排序算法中,其比较次数(交换次数)与序列初态无关的算法是()。
A.快速排序
B.直接插入排序
C.二路归并排序
D.冒泡排序
第4题
算法实现的思路为:n个人用1,2,…,n进行编号,使用不带头结点的单链表来存储,报数从1号开始,若某个人出圈,则将其打印输出,并将该结点删除,再对剩余的n-1个人重复同样的过程,直到链表中只剩下一个结点,将其输出即可。算法的具体实现如下:
第5题
图
实验目的:
(1)掌握图的两种存储结构的实现方法。
(2)掌握遍历图的递归和非递归算法。
(3)掌握和理解本实验中出现的一些基本的C语言语句。
(4)体会算法在程序设计中的重要性。
实验内容:
(1)设计算法,构造无向图的邻接链表,并递归地实现基于邻接链表的图的深度优先搜索遍历。
(2)设计算法,构造无向图的邻接矩阵,并递归地实现基于邻接矩阵的图的深度优先搜索遍历。
第7题
第8题
第9题
二叉搜索树中,然后对树进行中序遍历,并将元素按序放人数组a中,为简单起见,假设a中的数据互不相同。试编写一个函数,从一棵二叉搜索树中删除最大元素。要求函数的时间复杂性必须是O(h),其中h是二叉搜索树的高度。