数据结构中顺序表的创建、查找和折半查找

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:09:23
数据结构中顺序表的创建、顺序表的查找和有序表的折半查找,用c语言写的,写好以后我给50分。

//用vc调试过了有问题可以提出
#include<stdio.h>
#define listsize 100
typedef struct
{
int data[listsize];
int length;
}sqlist;//顺序表的类型
void createtsqlist(sqlist &L,int a[],int n)//用数组创建顺序表
{
L.length=0;
for(int i=0;i<n;i++)
{
L.data[L.length++]=a[i];
}
}

void findvalue(sqlist L,int x) //查找x是否在顺序表内
{
for(int i=0;i<L.length;i++)
{
if(L.data[i]==x)
{
printf("%d是第%d个元素\n",x,i+1);return;
}
}
printf("%d不在顺序表内\n",x);
}
void search_bin(sqlist L,int x)//折半查找有序表
{
int low=1;int high=L.length;int mid;
while(low<=high)
{
mid=(low+high)/2;
if(x==L.data[mid])
{
printf("%d是第%d元素\n",x,mid+1);return;
}
else if(x<L.data[mid])high=mid-1;
else low=mid+1;
}
printf("%d不在顺序表内\n",x);<