开发者社区> 问答> 正文

java中排序方法有哪些

java中排序方法有哪些

展开
收起
知与谁同 2018-07-21 14:27:34 1557 0
2 条回答
写回答
取消 提交回答
  • Java 排序有很多:冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序等。
    请参考:https://www.aliyun.com/jiaocheng/31591.html

    2019-07-17 22:50:58
    赞同 展开评论 打赏
  • 1、直接插入排序:最基本的插入排序,将第i个插入到前i-1个中的适当位置。
    2、折半插入排序:因为是已经确定了前部分是有序序列,所以在查找插入位置的时候可以用折半查找的方法进行查找,提高效率。
    3、 希尔排序: 又称缩小增量排序法。把待排序序列分成若干较小的子序列,然后逐个使用直接插入排序法排序,最后再对一个较为有序的序列进行一次排序,主要是为了减少移动的次数,提高效率。原理应该就是从无序到渐渐有序,要比直接从无序到有序移动的次数会少一些。
    4、 冒泡排序:反复扫描待排序序列,在扫描的过程中顺次比较相邻的两个元素的大小,若逆序就交换位置。第一趟,从第一个数据开始,比较相邻的两个数据,(以升序为例)如果大就交换,得到一个最大数据在末尾;然后进行第二趟,只扫描前n-1个元素,得到次大的放在倒数第二位。以此类推,最后得到升序序列。如果在扫描过程中,发现没有交换,说明已经排好序列,直接终止扫描。所以最多进行n-1趟扫描。
    5、快速排序: 思想:冒泡排序一次只能消除一个逆序,为了能一次消除多个逆序,采用快速排序。以一个关键字为轴,从左从右依次与其进行对比,然后交换,第一趟结束后,可以把序列分为两个子序列,然后再分段进行快速排序,达到高效。
    此外还有选择、归并、分配排序等等及它们的子类排序
    2019-07-17 22:50:58
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载