- 4
- 0
- 约 21页
- 2018-03-27 发布于贵州
- 举报
常用算法经典代码C版)
常用算法经典代码(C++版) 一、快速排序void qsort(int x,int y) //待排序的数据存放在a[1]..a[n]数组中{int h=x,r=y;int m=a[(x+y)1]; //取中间的那个位置的值while(hr){while (a[h]m) h++; //比中间那个位置的值小,循环直到找一个比中间那个值大的while (a[r]m) r--; //比中间那个位置的值大,循环直到找一个比中间那个值小的if(h=r){int temp=a[h];//如果此时h=r,交换a[h]和a[r]a[h]=a[r];a[r]=temp;h++;r--; //这两句必不可少哦}}if(rx) qsort(x,r);//注意此处,尾指针跑到前半部分了if(hy) qsort(h,y); //注意此处,头指针跑到后半部分了}调用:qsort(1,n)即可实现数组a中元素有序。适用于n比较大的排序二、冒泡排序void paopao(void) //待排序的数据存放在a[1]..a[n]数组中{for(int i=1;in;i++) //控制循环(冒泡)的次数,n个数,需要n-1次冒泡for(int j=1;j=n-i;j++) //相邻的两两比较if(a[j]a[j+1]) {int temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}或者void pao
原创力文档

文档评论(0)