问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

编程实现顺序查找("哨兵"的使用)与折半查找(有序表)算法.

发布网友 发布时间:2022-04-29 10:50

我来回答

1个回答

热心网友 时间:2022-06-26 11:33

顺序查找
#include
<stdio.h>
#include
<stdlib.h>
#define
MAX_LENGTH
100typedef
int
KeyType;
typedef
struct
{
KeyType
*elem;
int
length;
}SSTable;
//顺序表的存储结构
int
Search_Seq(SSTable
ST,
KeyType
key){
int
i;
ST.elem[0]
=
key;
//“哨兵”,如果顺序表中不存在要查找的数据的话,则查找指针必定指向该哨兵
for(i
=
ST.length;
ST.elem[i]
!=
key;
i--)
;
return
i;
//找到的话,则i
!=
0,否则i
=
0
}
void
main()
{
int
i,
key;
SSTable
T;
T.elem
=
(KeyType
*)malloc(sizeof(KeyType));
printf("How
Many
Entries
Do
You
Want
input\n");
scanf("%d",
&T.length);
for(i=1;
i<=T.length;
i++){
printf("Please
input
the
%dth
entries
\n",
i);
scanf("%d",
&T.elem[i]);
}
for
(i=1;
i<=T.length;
i++)
printf("%5d",T.elem[i]);
//显示已经输入的所有数据
printf("\nPlease
input
the
data
you
want
to
search\n");
scanf("%d",
&key);
i
=
Search_Seq(T,key);
printf("the
search
data
is
locate
the
%dth(0
indicate
can
not
find)\n",i);
}
折半查找
#include
<stdio.h>
#include
<stdlib.h>
int
binSearch(const
int
*Array,int
start,int
end,int
key)
{
int
left,right;
int
mid;
left=start;
right=end;
while
(left<=right)
{
mid=(left+right)/2;
if
(key<Array[mid])
{
right=mid-1;
}
else
if(key>Array[mid])
{
left=mid+1;
}
else
return
mid;
}
return
-1;
}
void
main()
{
int
A[]={10,20,30,40,50,60,70,80};
int
n;
printf("Please
search
num:");
scanf("%d",&n);
int
index=binSearch(A,0,8,n);
if(index==-1)
{
printf("no
num");
}
else
{
printf("index=%d",index+1);
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
美的燃气热水器12升电脑版显示FR一pH一PL一dH一nE一qU怎么调好_百度知... 热水器ph什么意思 上海工程技术大学公共管理专业是什么学院 公共事业管理在暨南大学中属于哪个学院? 中央财经大学公共事业管理学生就业去向都有哪些 中飞院公共事业管理是什么专业 广西医科大学公共事业管理属于哪个学院 抖音怎么发视频@抖音小助手 发视频@抖音小助手操作一览 轻颜相机怎么取消自动续费 取消自动续费教程 轻颜相机vip怎么取消 美菱雅典娜470WUPB冰箱嗡嗡响 美菱雅典娜4开门冰箱买回家有响声,就像敲门声一样 雅典娜冰箱会不间断地发出响声 美菱雅典娜冰箱嘣的响了一下,有烧坏电子件味道,请问问题大吗,就送不上电了 清除emmc是恢复出厂设置吗 微信 水印 怎么做 手机清除emmc后一直在开机界面怎么办 又没有电脑 按音量上键和... 怎么添加自己的水印 TCL清除掉了eMMc无法开机了怎么办? 美菱雅典娜冰箱有咕噜咕噜响,一会上冻一会化冻怎么回事? 手机重新下载软件后开机异常,清除EMMC又好了是什么原因 手机root后无法正常开机了,要清除emmc才能开机,也不能读sim卡,但别的... 美菱雅典娜电冰箱为什么突然间歇性响而且噪音挺大的? vivoy11开不开机进入工厂模式清除emmc能开机吗 摩旅川藏线来到飞夺泸定桥的地方 清除emmc但还是开不了机怎么办 清除emmc后无法开机 结合下面《长征感悟》的描述,写一段以”重走长征路“为主题的导游词。 飞夺泸定桥 具体事情 在大渡河上架设40吨的泸定桥,科技不发达的古代是怎么做到这点的? 顺序表的顺序查找和二分查找? 顺序查找算法用函数实现。对任意输入的一个数,在数组中进行查 顺序查找的C语言实现 要求能实现顺序表的三种查找算法:顺序查找,二分查找,散列查找(通过菜单... 如何用递归算法,实现对有序表的顺序搜索的功能 《C++》 C语言 查找算法实现 实现改进后的顺序查找 诚求用C语言编一个实现常见查找算法。 求查找算法(折半查找法,顺序查找法,分别在一个程序里)“动画演示”程序... 使用顺序查找法,在一组数中查找某给定的数x。VB程序 编写个实例代码 怎样用C语言实现带监视哨的简单顺序查找算法和折半查找算法并计算其比较次数 顾客在美团差评直接说这家新店不好吃,不值得推荐!怎么申诉可以成功 新款上汽大众桑塔纳正式上市 售价区间8.69万-11.18万 普通桑塔纳的价格大概是多少 新款大众桑塔纳正式上市 起售价格8.69万元 美团外卖顾客差评有杂东西没有图片也没有说是什么东西可以申诉吗? 上海大众桑塔纳售价多少?百公里耗油多少? 2018年11月份买的上汽大众桑塔纳现在值多少钱?公里15000左右 那这个桑塔纳180前保险杠杠坏了要多少钱 通用定额发票能报销吗