试编写一个算法,在链式存储结构上实现直接插入排序算法。
假设二叉树采用二叉链表存储结构,试编写一个非递归算法,输出中序遍历序列中第k个结点的数据值。
假设表中关键字序列为(41,36,58,12,79,25),将关键字依次插入一棵初始为空的二叉排序树,然后删除结点 41。(1) 画出二叉排序树的生成过程;(2)画出删除结点41后的二叉排序树。
设计一数据结构,用来表示图的邻接矩阵存储结构(包括弧的结构和图的结构)。
设一组初始记录关键字序列为(41,35,52,17,8,50,22,38),请分别给出第5趟简单选择排序和第4趟直接插入排序的结果。
设矩阵是一个N×N对称矩阵,将其下三角部分按行序存放在一维数组中,对下三角部分中任一元素Aij(i>=j),在一维数组中的下标位置k与i的关系为______.
设二叉树中度为0的结点数为30,度为1的结点数为20,则该二叉树中总共有_____个结点数。
在折半查找中,要求待查找的关键字序列必须________,这样才能进行查找操作。
一组记录的排序码为(45,35,71,51,20,26,61,12),则利用快速排序的方法,以第一个记录为基准得到的第一次划分结果为____________________.
初始序列为1 8 6 2 5 4 7 3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历序列为【 】。
若需在O(log2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是【 】。
在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是【 】。
下述排序算法中,所需辅助存储量最多的是__________,所需辅助存储量最少的是__________,平均速度最快的是__________。A. 快速排序 B. 归并排序 C. 堆排序
若有n个元素已构成一个小根堆,那么如果增加一个元素Kn+1,请用文字简要说明如何在log2n的时间内将其重新调整为一个堆。
如果待排序序列中两个数据元素具有相同的值,在排序前后它们的位置发生颠倒,则称该排序算法是不稳定的,【 】就是不稳定的排序算法。