当前位置:   article > 正文

用快排法对数组进行排序(c语言)_c语言对数组进行快速排序

c语言对数组进行快速排序

输入一组数组,按从小到大的顺序进行排序。

  1. #include<stdio.h>
  2. int n;
  3. int a[101];
  4. void kuaipai(int left,int right){
  5. int temp,i,j,t;
  6. if(left>right)
  7. return ;
  8. temp=a[left];
  9. i=left;
  10. j=right;
  11. while(j!=i){
  12. while(a[j]>=temp&&i<j)
  13. j--;
  14. while(a[i]<=temp&&i<j)
  15. i++;
  16. if(i<j){
  17. t=a[i];
  18. a[i]=a[j];
  19. a[j]=t;
  20. }
  21. }
  22. a[left]=a[i];
  23. a[i]=temp;
  24. kuaipai(left,i-1);
  25. kuaipai(i+1,right);
  26. }
  27. int main(){
  28. int t;
  29. scanf("%d",&n);
  30. for(t=1;t<=n;t++){
  31. scanf("%d",&a[t]);
  32. }
  33. kuaipai(1,n);
  34. for(t=1;t<=n;t++){
  35. printf("%d",a[t]);
  36. }
  37. getchar();getchar();
  38. return 0;
  39. }

运行界面:

先输入10个数,从小到大输出结果。

  1. 10
  2. 6 1 2 7 10 3 9 5 4 8
  3. 12345678910

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/658285
推荐阅读
相关标签
  

闽ICP备14008679号