您的位置:逆风者 数据结构 正文
原作者:www.upwinder.com 添加时间:2007-09-02 原文发表:2007-08-31 人气:40 来源:未知

#include <malloc.h>
#include<stdio.h>
#define N 11
/*用监视哨查找*/
int search(int array[],int n,int k)
{int i;
i=n-1;
array[0]=k;
while(array[i]!=k) i--;
return(i);
逆@风@者
}
/*折半查找法*/
int halfsearch(int array[],int n,int k)
{int i,j,mid;
i=1;j=n;
while(i<=j)
{mid=(i j)/2;
if(k==array[mid]) return(mid);
else if(k<array[mid]) j=mid-1;
else i=mid 1;
}
return(0);
}

/*冒泡排序法*/
void mpsort(int array[])
{int i,j,a;
a=0;
for(i=1;i<N;i )
for(j=i 1;j<N;j )
if(array[i]>array[j])
{a=array[i];
array[i]=array[j];
array[j]=a;}
}
/*直接插入排序*/
void insertsort(int array[])
{int i,j;
for(i=2;i<N;i )
{array[0]=array[i];
j=i-1;
while(array[0]<array[j])
{array[j 1]=array[j--];
array[j 1]=array[0];
}
}
}
/*建立*/
void creat(int array[])
{int i;
printf("enter the array:\n");
for(i=1;i<N;i )
scanf("%d",&array[i]);
}

/*显示*/
void print(int array[])
{int i;
printf("The numbers after sort is:\n");
for(i=1;i<N;i )
printf("%d ",array[i]);
printf("\n");
}


main()
{int a[11],i,x,chang;
/*printf("enter the array\n");
for(i=1;i<11;i )
scanf("%d",&a[i]);*/

aga:
printf("\nchang:1: use watching method finding\n 2:use half method finding\n 3: use directness intsert method sort\n 4:use bubble up method sort\n 5:exit\n");
scanf("%d",&chang);
switch (chang)
{case 1:
{creat(a);
printf("Please int the search number:\n");
scanf("%d",&x);
printf("The number station is:%d\n",search(a,N,x));
goto aga;
}
case 2:
{ creat(a);
insertsort(a);
print(a);
printf("Please int the search number:\n");
scanf("%d",&x);
printf("The number station is:%d\n",halfsearch(a,N,x));
goto aga;
}
case 3:
{creat(a);
insertsort(a);
print(a);
goto aga;
}

case 4:
{creat(a);
mpsort(a);
print(a);
goto aga;
}

case 5:{ printf("exit!\n");break;}
default:{printf("Error!\n"); goto aga;}
}
}

相关文章

数据结构教程 第十六课 串操作应用举例
数据结构教程 第三十二课 哈希表(一)
数据结构教程 第三十一课 动态查找表
数据结构教程 第二十四课 遍历二叉树
数据结构教程 第六课 线性表的顺序表示和实
数据结构教程 第二十二课 实验五 数组实验
数据结构教程 第二十一课 树、二叉树定义及
数据结构教程 第三十八课 文件概念,顺序文
数据结构教程 第十二课 实验二 循环链表实验
数据结构教程 第十一课 栈的应用
数据结构教程 第二十六课 图的定义与术语
数据结构教程 第十课 栈的表示与实现
数据结构--序言
线索二叉树算法
数据结构教程 第三十六课 选择排序,归并排
数据结构教程 第二十课 广义表
关于文件管理系统的数据结构模拟
链表基本操作的程序实现
用栈设置密码
数据结构教程 第三十课 静态查找表(二)有

相关评论


本文章所属分类:首页 数据结构

  热门关键字: