zxqk.net
当前位置:首页 >> 对一维数组进行排序 >>

对一维数组进行排序

选择排序的思路, 每次选最小的数放前边..int n[100]; //100个数进行排序.int m;for(int i = 0; i

void mysort(int *a, int len) //数组a,len为长度 { int t,i,j; for (i=len-1;i>0;i--) for(j=0;j<i;j++) { if (a[j]>a[j+1]) { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } } 以上程序按升序排序,将if中的>改成<可以按降序

额,你要那一种排序,我写了几个简单的排序效率不高,o(n^2)1.插入法#include<stdio.h>#include<stdlib.h>#define max 32767int a[max];void swap(int &a,int &b){ int t=a; a=b; b=t;}void insertsort(int n){ for(int i=1;i<n;i++) { for(int j=i;j>0&&a[j]<a[j-1];

#include <stdio.h>#include <stdlib.h>#include <time.h>#define MAXlen 100void select_sort(int *x, int n) { //选择排序 int i, j, min; int t; for (i = 0; i < n - 1; i++) { // 要选择的次数:0~n-2共n-1次 min = i; // 假设当前下标为i的数最小,比较后再调整

#include <stdio.h>#define N 5 //用户输入几个数据,存入数组,再进行降序排列 void main() { int i,j; int temp; int grade[N]={23,45,78,66,55}; for(i=0;i<N;i++) { for(j=0;j<N-i-1;j++) { if(grade[j]<grade[j+1]) /* 交换元素 */ { temp=grade[j+1]; grade[j+1]=

vb方案: ----------------------------------------------------------------- 【简单说明】 在排序函数外部给数组赋值,并且按以下方式调用排序函数: call sort(data) '其中sort是排序函数名,data是数组名 注意:调用完成后,就对10个数据进行了降序排列. -------

#include#include int cmp1(const void *a,const void*b) { return *(int *)a-*(int *)b; } int cmp2(const void *a,const void*b) { return *(int *)b-*(int *)a; } int main() { int i; int a[10]={1,2,3,8,5,9,10,4,7,6}; //asc qsort(a,10,sizeof(int),cmp1); for(i=0;i printf("%d "

/*我举个简单例子,一个一维数组int a[5]={3, 8, 4, 7, 6}按降序排列以后是int b[5]={8, 7, 6, 4, 3}最大的元素8在原来的数组中是第二位,7是第四位,等等得到一个表示原来位置的数组int c[5]={2, 4, 5, 3, 1}*/#includevoid main(){ int i,j,k=0; int a[5]={3, 8, 4, 7, 6}; int b[5]={8, 7, 6, 4, 3}; int c[5] = {0}; for (i=0;i 评论0 4 0

int BubbleImprovedSort(int a[], int len) { int i, j, temp, CompareNum=0; int exchange; // 交换标志,若某趟排序中所有元素位置未发生交换则说明排序完成 for(i=0; i<len-1; i++) // 最多需len-1趟排序 { exchange = 0; for(j=0; j<len-i-1; j++) // 每趟排

Option ExplicitOption Base 1Private Sub Cmdsort_Click() Dim sort(10) As Integer, temp As Integer Dim i As Integer, j As Integer Randomize For i = 1 To 10 sort(i) = Int(Rnd * (100 - 1)) + 1 text1 = Text & Str(sort(i)) Next i For i = 1 To 9 For j = i + 1 To

网站首页 | 网站地图
All rights reserved Powered by www.zxqk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com