#include<stdio.h>
#include<stdlib.h>
#define MaxSize 30 //查找表最大尺寸
typedef int ElemType; //查找数据的类型
typedef struct { //元素的结构
ElemType key; //关键码域
ElemType other; //其他数据域
}ListNode;
typedef struct { //查找表类型定义
ListNode elem[MaxSize]; //数据存储数组
int length; //数组当前长度
}SSList,*listlink;
void Iinit(listlink &L){ //初始化顺序表
int i;
L=(listlink)malloc(sizeof(SSList));
printf("请输入表长:");
scanf("%d",&L->length);
printf("请输入%d个整数(有序输入):",L->length);
for(i=1; i<=L->length; i++)
scanf("%d",&L->elem[i].key);
}
int Search_Seq(listlink &L, int key){ //顺序查找
int i,compare=1;
L->elem[0].key=key; //作为控制搜索自动结束的“监视哨”使用
i=L->length;
while(L->elem[i].key!=key)
{compare++;
i--; }
printf("顺序查找比较次数: %d次\n待查元素所在位置: 第%d位\n",compare,i);//从后往前找,找不到时,i为0
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余2页未读,立即下载