顺序查找法
来源:互联网 发布:kali linux 内核版本 编辑:程序博客网 时间:2024/06/05 08:24
#include<stdio.h>#define KeyType int #define OtherType int#define List_size 100typedef struct{KeyType key;OtherType other;}RecordType;typedef struct{RecordType r[List_size];int length;}Recordlist;int SeqSearch(Recordlist l,int k)//没有设置监视哨{int i=l.length;while(i>=1&&l.r[i].key!=k)i--;if(i>=1)return(i);else return (0);}int main(void){int i,x;Recordlist L;for(i=0;i<10;i++){printf("请输入顺序表中元素个数:\n"); scanf("%d",&L.length);printf("请输入顺序表中数据:\n"); for(i=1;i<=L.length;i++)scanf("%d",&L.r[i].key);printf("请输入查找的元素\n");scanf("%d",&x);i=SeqSearch(L,x);if(i!=0) printf("查找结果为第%d个数\n",i); elseprintf("查找失败!\n");}return 0;}
#include<stdio.h>#define List_size 100typedef struct{int key;int other;}RecordType;typedef struct{RecordType r[List_size];int length;}Recordlist;int SeqSearch(Recordlist *L,KeyType x)//设置监视哨{L->r[0].key=x;int i=L->length ;while(L->r[i].key!=x)i--;return i;}int main(void){int i,x;Recordlist L,*p=&L;for(i=0;i<10;i++){printf("请输入顺序表中元素个数:\n"); scanf("%d",&L.length);printf("请输入顺序表中数据:\n"); for(i=1;i<=L.length;i++)scanf("%d",&L.r[i].key);printf("请输入查找的元素\n");scanf("%d",&x);i=SeqSearch(p,x);if(i!=0) printf("查找结果为第%d个数\n",i); elseprintf("查找失败!\n");}return 0;}
l.r[0]为“监视哨”,可以防止越界的作用,也可以提高查找效率。
0 0
- 顺序查找法
- 顺序查找法
- 顺序法查找
- 顺序查找法
- 顺序查找法
- 顺序查找法
- 二分查找法和顺序查找法
- 顺序查找法与二分法查找
- C语言: 顺序查找法
- 静态查找:顺序查找和折半查找法
- 顺序查找
- 顺序查找
- 顺序查找
- 顺序查找
- 顺序查找
- 顺序查找
- 顺序查找
- 顺序查找
- 深入理解HTTP Session
- SAP冲销总结
- 是时候开始招募移动架构师了
- 数据库恢复技术
- js创建数组相关以及判断数组元素重复问题
- 顺序查找法
- 从头认识java-13.1 泛型与容器(容器的演变)
- Linux的i2c驱动详解
- Xcode 7 网络请求问题
- Domino 使用递归算法获取视图值
- 使用js读取xml文件responseXML返回值为null
- 你的网站需要HTTPS了
- Win10/UWP新特性系列—使用打印机
- AjaxFileUpload使用中遇到的问题