搜索

菜鸟提问 c语言关于快速排序

gecimao 发表于 2019-06-12 17:24 | 查看: | 回复:

  当数组中有重复的数字时,就排不出来了,只有数组中数字都不一样时排出的结果才正确。哪位高手能帮忙修正一下。

  由于小弟我刚接触C语言没多久,希望能解释的浅显点。十分感谢!!!!展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  /*while(i!=j)不要用这种方法判定循环结束,万一i==j-1,i++,j--后 i〉j了,!=这个条件就救不了你了*/

  /*将参照数 与 最后一个小于等于参照数的数进行交换,这样就真正把左右两个阵营分开了*/

  快速排序作为c语言中速度最快的一种排序,肯定能处理数字相同的情况,而且快速排序肯定是用递归算法。你的问题是算法,这里有个带注释的快速排序,win-tc和Dev-c++下运行通过。

  swap(R[i],R[j]); //交换,你是想交换吧,虽然可以通过异或交换,但难以理解.

本文链接:http://baumseelen.com/duipaixu/575.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部