算法说明:已知r[n]是n个记录的递增有序表,用折半查找法查找关键字(key)为k的记录。若查找失败,则输出“failure”,函数的返回值为0;否则输出“success”,函数返回值为该记录的序号值。 int binsearch(struct RecordType r[],int n,KeyType k) { int mid,low=1,high=n; ...
7-7 设有序顺序表中的元素依次为017, 094, 154, 170, 275,503, 509, 512, 553, 612, 677, 765, 897, 908。试画出对其进行折半搜索时的判定树, 并计算搜索成功的平均搜索长度与搜索不成功的平均搜索长度。 908相关知识点: 试题来源: 解析 折半搜索时的判定树为: ASLSUCC=1/14(1+2*2+3*4+4*7...
9.假设以两个元素值递增有序排列的线性表A、B分别表示两个集合,要求另辟空间构造一个线性表C,其元素为两集合的交集,且表C中的元素值也递增有序排列。用顺序表实现并写出C的
百度试题 题目在( )上插入、删除和顺序存取速度快,但查找速度慢。 A. 顺序表 B. 表 C. 顺序有序表 D. 散列表 相关知识点: 试题来源: 解析 B.表
35:先找到中点15,比15大,再找右边剩下的5个元素的中点,正好35,查找成功,依次比较15、35,共比较2次 51:继续上面的过程,51比35大,再找剩下2个元素的中点为41,比41大,还是找剩下唯一一个52的中点,比52小,查找失败, 依次比较15、35、41、52,共比较四次 ...
二叉排序树,简言之,就是“左小右大”,它的中序遍历结果是一个递增的有序序列。平衡二叉树是二叉排序树的优化,其本质也是一种二叉排序树,只不过,平衡二叉树对左右子树的深度有了限定:深度之差的绝对值不得大于1。对于二叉排序树,“判断某棵二叉树是否二叉排序树”这一算法经常被考到,可用递归,也可以用非递归...
23.已知顺序表中有n个记录,表中记录不依关键字有序排序,编写一算法,为该顺序表建立个有序的索引表(依关键字递增排列),索引表中的毎一项应含有记录的关键字和该记录在顺序表
(2)表中只有一个关键字等于给定值k的记录,无序表、有序表:顺序查找成功时,平均查找长度均为1/(n)*(1+2+…+n)=(n+1)/2;两者相同。(3)表中只有m个关键字等于给定值k的记录,无序表:ASL=n+1;有序表:ASL=(n+1)/2+m;两者不相同。
队列(Queue)是一种运算受限的线性表,插入在表的一端进行,而删除在表的另一端进行,允许删除的一端称为队头(front),允许插入的一端称为队尾(rear) ,队列的操作原则是先进先出的,又称作FIFO表(First In First Out) .队列也有顺序存储和链式存储两种存储结构。 队列的基本运算有六种: ·置空队:InitQueue(Q)...
multiset 红黑树 插入、删除、查找 O(log2n) 有序 可重复 map 红黑树 插入、删除、查找 O(log2n) 有序 不可重复 multimap 红黑树 插入、删除、查找 O(log2n) 有序 可重复 unordered_set 哈希表 插入、删除、查找 O(1) 最差 O(n) 无序 不可重复 unordered_multiset 哈希表 插入、删除、查找...