排序及查找方法

#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]);*/

/* www.bianceng.cn */

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;}
}
}

时间: 2024-11-05 16:32:22

排序及查找方法的相关文章

Redis SORT排序命令使用方法详解

  对于Redis SORT排序命令 我相信大家都不怎么了解了,因此小编整理了一些Redis SORT排序命令使用方法与例子,希望例子可以对各位玩家带来帮助哦. Redis SORT是由Redis提供的一个排序命令.集合中的标签是无序的,可以使用SORT排序.如: redis>SADD jihe 5 (integer) 1 redis>SADD jihe 1 (integer) 1 redis>SADD jihe 2 (integer) 1 redis>SADD jihe 8 (i

jquery拖拽排序简单实现方法(效果增强版)_jquery

本文实例讲述了jquery拖拽排序简单实现方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 原来没有新建动作,分析代码后发现很容易增强~~ 代码如下: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>测试的拖拽功能</title

让MySQL支持中文排序的实现方法_Mysql

让MySQL支持中文排序 编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象,一种解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary". 编译MySQL时使用--with--charset=gbk 参数,这样MySQL就会直接支持中文查找和排序了. mysql order by 中

PHP常用的排序和查找算法_php技巧

本文汇总了常见的php排序算法和查找,在进行算法设计的时候有不错的借鉴价值.现分享给大家供参考之用.具体如下: <?php /** * PHP最常用的四个排序方法及二种查找方法 * 下面的排序方法全部都通过测试 * auther : soulence * date : 2015/06/20 */ //PHP冒泡排序法 function bubbleSort(&$arr){ //这是一个中间变量 $temp=0; //我们要把数组,从小到大排序 //外层循环 $flag=false;//这个优

Excel表格中自定义排序序列的方法

   Excel表格中自定义排序序列的方法         1.启动Excel 2013并打开工作表,任意选取一个单元格后在"开始"选项卡的"编辑"组中单击"排序和筛选"按钮,在打开的下拉列表中选择"自定义排序"选项,如图1所示. 图1 选择"自定义排序"选项 2.打开"排序"对话框,在"次序"下拉列表中选择"自定义序列"选项,如图2所示. 图2

jQuery对JSON数据进行排序输出的方法

  本文实例讲述了jQuery对JSON数据进行排序输出的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 $.getJSON('URl',function(data){ data.sort(function(a,b){return a.demoname-b.demoname}); for(i=0;i<data.length;i++){ alert(data[i].demoname) } }) 希望本文所述对大家的jQuery程序设计有所帮助.

火狐浏览器默认的插件目录的查找方法

  火狐浏览器默认的插件目录的查找方法 火狐浏览器 问:火狐浏览器默认的插件目录在哪? 答:firefoxplugins,即安装目录下plugins文件夹里! 备选方案:火狐浏览器插件目录的查找方法 打开C盘; 然后,在c盘搜索"xpi"; 搜索 接着就可以看到所有的火狐插件了,以及他们的存放目录.

浅析jQuery中常用的元素查找方法总结

本篇文章是对jQuery中常用的元素查找方法进行了详细的总结和介绍,需要的朋友参考下   $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 $("div") 选择所有的div标签元素,返回div元素数组 $(".myClass")   选择使用myClass类的css的所有元素 $("*") 选择文档中的所有的元素,可以运用

jQuery对JSON数据进行排序输出的方法_jquery

本文实例讲述了jQuery对JSON数据进行排序输出的方法.分享给大家供大家参考.具体实现方法如下: $.getJSON('URl',function(data){ data.sort(function(a,b){return a.demoname-b.demoname}); for(i=0;i<data.length;i++){ alert(data[i].demoname) } }) 希望本文所述对大家的jQuery程序设计有所帮助. 以上是小编为您精心准备的的内容,在的博客.问答.公众号.