怎么用C++(数据结构)编写选择排序的程序设计与实现

怎么用C++(数据结构)编写选择排序的程序设计与实现,第1张

给你一个二分查找这个很多公司面试啊 还有考试都要用到的 很重要 希望你能深入的理解的说

// int BinSearch(SeqList R,KeyType K)// { //在有序表R[1n]中进行二分查找,成功时返回结点的位置,失败时返回零// int low=1,high=n,mid; //置当前查找区间上、下界的初值// while(low<=high)// { //当前查找区间R[lowhigh]非空// mid=low+((high-low)/2);//使用 (low + high) / 2 会有整数溢出的问题// if(R[mid]key==K) // return mid; //查找成功返回// if(R[mid]key>K)// high=mid-1; //继续在R[lowmid-1]中查找// else// low=mid+1; //继续在R[mid+1high]中查找// }// return 0; //当low>high时表示查找区间为空,查找失败// } //BinSeareh

#include<stdioh>

#include<timeh>

#include<stdlibh>

int random() //产生随机数10-99范围的随机数

{

int num;

num = rand()%100;

return num;

}

void selectsort(int k[],int n) //选择法排序

{

int i,j,max,t;

for(i=0;i<n-1;i++)

{max=i;

for(j=i+1;j<n;j++)

if(k[j]>k[max])

max=j;

if(max!=i)

{t=k[max];

k[max]=k[i];

k[i]=t;

}

}

}

void main()

{

int a[20];

int i,t;

printf("这二十个随机数依次是:\n");

srand( (unsigned)time( NULL ) );

for(i=0;i<20;i++)

{

a[i]=random();

printf("%d ",a[i]);

}

selectsort(a,20);

printf("选择法排序的结果是:\n");

for(i=0;i<20;i++)

printf("%d ",a[i]);

printf("\n");

}

行了,你试试看吧。。。。

k==i 说明排序前k,i指向一个人的id,排序后还是指向一个人,所以没必要交换

strcmp(name[k],name[j])>0 strcmp 字符串比较函数,

这是一个选择排序算法,每趟求出最大人名的下标,并交换

以上就是关于怎么用C++(数据结构)编写选择排序的程序设计与实现全部的内容,包括:怎么用C++(数据结构)编写选择排序的程序设计与实现、怎样编程: 采用选择排序法对随机产生的20个100以内的无序整数按由大到小的顺序重、C语言程序设计 姓名排序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9451893.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存