一. 数据结构部分
-
用顺序存储结构实现线性表时, 在线性表中查找等于x的元素, 通常在表尾部先添加一个等于x的元素,这样做可以加快查找速度, 为什么? 用单链表实现线性表时, 能否加快速度, 为什么?
1)该元素一般被称为”哨兵”, 每次查找时不需要考虑地址越界的情况, 仅仅需要进行值判断;查找结束时判断索引位置即可分辨是否真的查到到x元素
2)对于单链表实现的线性表则无法加快速度,因为链表的越界通过指针是否存在来判断;且要在单链表的最后插入元素x需要遍历整个链表。
-
用基数排序堆关键字序列
012, 321, 234, 543 456, 765, 678, 987, 890, 109
从小到大排序,写出各趟排序的结果。采用最低位优先
-
一个由两两不等数组成的有序序列具有以下特点:(1)数1在该序列中(2)若数x在序列中,则2x、3x、5x也在该序列中 (3)除此之外,该序列无其他数。编写算法,输出该序列中最小的100个数,要求使用递归实现。
def getRecursiveSequence(i, n)