11问答网
所有问题
当前搜索:
无序数组中第k大的数
asp.net C#中四种常用排序法哪个比较快,哪个比较好?
答:
已知一组
无序
数据a[1]、a[2]、……a[n],需将其按升序排列。首先任取数据a[x]作为基准。比较a[x]与其它数据并排序,使a[x]排在数据的
第k
位,并且使a[1]~a[k-1]中的每一个数据a[x],然后采用分治的策略分别对a[1]~a[k-1]和a[k+1]~a[n]两组数据进行快速排序。优点:极快,...
C语言:用选择排序法对一个
数组里的数
进行排序,从小到大,要求选出小的...
答:
这样:int *a = (int *)malloc(sizeof(int) * n); //动态分配
数组
空间 ,有几个元素,n就是几。for(i=0; i<n; i++){ a[i]=录入数值;} Sort(a, n);for(j=0; j<n; j++){ printf("%d",a[ij);//输出的内容就是排序好了的 }//下面方法是用来排序的 void Sort(int *a...
c语言的两种排序?
答:
for(
k
=j+1;k<=9;k++){ if(num[j]<num[k])//num[j]<num[k]{ temp=num[j];num[j]=num[k];num[k]=temp;} } } //用一个for循环来输出
数组中
排序好的数据 for(l=0;l<=9;l++){ printf("%d",num[l]);} return 0;} 2、冒泡排序法 要求输入10个整数,从大到小排序...
C语言冒泡排序法
答:
冒泡排序每一趟排序把最
大的
放在最右边。比如:87 12 56 45 78 87和12交换:12 87 56 45 78 87和56交换: 56 87 45 78 87和45交换: 45 87 78 87和78交换: 78 87 到此第一趟排序结束,接下来的每一趟排序都是这样。include<stdio.h>void Print(int *num, int n){ int...
简述各种排序算法的优缺点
答:
="" 已知一组
无序
数据a[1]、a[2]、……a[n],需将其按升序排列。首先任取数据a[x]="" 作为基准。比较a[x]与其它数据并="" 排序,使a[x]排在数据的
第k
="" 位,并且使a[1]~a[k-1]中的每一个数="" 据a[x],然后采 用分治的策略分别对a[1]~a[k-1]和a[k+1]~a[n] ...
...利用选择排序法对输入
的数
进行从小到大排序
答:
你的程序逻辑有些问题,输入,排序,输出分开做,这样更明确,更清晰,代码如下:include <stdio.h>#include <stdlib.h>int main(){int a[5];int i, j, t;int min;// 输入printf("input 5 numbers:\n");for (i = 0; i<5; i++)scanf("%d", &a[i]);// 选择排序for (i = 0...
什么叫做冒泡排序?
答:
针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对
数字
需要比较。具体如何来移动呢?让我们来看一个栗子:请点击输入图片描述 请点击输入图片描述 有8个
数组
成一个
无序
数列:5,8,6,3,9,2,1,7,希望从小到大排序。按照冒泡排序的思想,...
c++选择法排序和插入法排序比较 使用函数
答:
a[j]=
k
;}/*用中间变量k做交换*/ for(j=0;j<=9;j++)printf("%d\n",a[j]);system("pause");} /*插入法*/ /*插入法的的意思就和我们抓牌一样,把记录分为有序和
无序
两区。把无序区中的每个数“挨个”拿来和有序区
的数
比较。比有序区小的位置保持不变,
大的
话先挪动位置空出来...
学没多久c语言,这里的n~n-2是什么意思?
答:
应该是0–n-2吧,选择法排序,相当于1–n-1,两个数排一次,3个数排两次……
谁教我:数据结构的各种排序
答:
int a[N];//用a
数组
记录所给
无序
数列int b[N]={0};//用b数组记录每次排序之后的a数组int sign=0;void Merge(int m,int mid,int n)//将两个有序数列合并成为一个有序数列{ int i,j,
k
; i=k=m; j=mid+1; while(i<=mid&&j<=n)//依次比较两个有序数列中的元素,从大到小将其放入b数组...
<涓婁竴椤
1
2
3
4
5
6
7
8
9
涓嬩竴椤
其他人还搜