标题:动态折半查找 (
取消只看楼主
wbfiow
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-5-7
结帖率:50%
已结贴  问题点数:10 回复次数:1 
动态折半查找 (
动态折半查找

--------------------------------------------------------------------------------

题目描述:


我用的是vc6.0,希望到时可以运行,用c或者c++,
对整型有序关键码序列进行折半查找,待排序序列以数组存储。如果找到待查记录,返回找到的位置下标,并删除该关键码记录;如果没找到待查记录,返回0,并将待查记录插入到适当位置,即该查找属于动态查找。输出查找过程中每一轮的low,mid,high 值,以及与给定值相比较的关键码值,并输出最后找到的位置,及变化后的数组。

注意:该数组为整型,数组中关键码存储位置为r[1]~r[n],r[0]留作它用,且关键码个数大于4.


--------------------------------------------------------------------------------

输入样例:


10
1 2 5 8 10 17 22 23 68 87
5
11
23
--------------------------------------------------------------------------------

输出样例:


1 5 10 10
1 2 4 2
3
1 2 8 10 17 22 23 68 87
1 5 9 17
1 2 4 2
3 3 4 8
4 4 4 10
0
1 2 8 10 11 17 22 23 68 87
1 5 10 11
8
1 2 8 10 11 17 22 68 87
--------------------------------------------------------------------------------

输入描述:


第一行输入数组中记录个数n
第二行输入n个有序的整型关键码,以空格隔开
接下来输入三个待查关键码,每个关键码占一行


--------------------------------------------------------------------------------

输出描述:


对于每个关键码,分别输出:
找到给定值之前的每一轮的low,mid,high及相比较的待查找序列中的关键码,以空格隔开
接下来一行输出查找到的位置
接下来一行输出变化后的待查找序列


--------------------------------------------------------------------------------

程序限制:

程序可使用最大内存:10000K
程序运行最长耗时:10000MS(毫秒)
--------------------------------------------------------------------------------



[ 本帖最后由 wbfiow 于 2011-5-9 15:18 编辑 ]
搜索更多相关主题的帖子: 动态 记录 
2011-05-09 15:11
wbfiow
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-5-7
得分:0 
大家帮帮忙哈。。
2011-05-10 22:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-339301-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.259804 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved