线性表的顺序查找

来源:互联网 发布:php获取url文件名 编辑:程序博客网 时间:2024/05/17 00:52
#include<stdio.h>#include<string.h>#include<iostream>#include<algorithm>#define maxn 100//设置的表长的最大值using namespace std;typedef struct//顺序表的存储结构,这里我将数据类型都定义为int型{int num[maxn];//用num[]数组存储表的元素int length;//计算表长}SSTable;int Search_Seq(SSTable ST,int key)//查找函数 {//在顺序表ST中顺序查找其关键字等于key的数据元素,若找到函数的值为该元素在表中的位置,否则为0。 int i;for(i=ST.length;i>=1;--i)if(ST.num[i]==key) return i;return 0;}int main(){int n,i;SSTable ST;int position;//KeyType key;int key;printf("输入顺序表中元素的个数:");scanf("%d",&n);ST.length=n;printf("输入各个元素的值:");for(i=1;i<=n;i++){scanf("%d",&ST.num[i]);}sort(ST.num+1,ST.num+n+1);//sort()函数使排序函数,传说中的快排 printf("输出排好序的元素:");for(i=1;i<=n;i++){printf("%d ",ST.num[i]);} printf("\n");printf("输入要查找的元素的值:");scanf("%d",&key);position=Search_Seq(ST,key);//把查找到的元素的位置赋值给position,并在后面输出position if(position){printf("所查找元素多的位置是:%d\n",position);}else printf("查找的语速不在表中(查找失败)\n");return 0;}

0 0
原创粉丝点击