博客
关于我
Java几种常见排序算法与代码实现
阅读量:173 次
发布时间:2019-02-28

本文共 698 字,大约阅读时间需要 2 分钟。

排序算法是编程中经常遇到的问题,也是校招、春招、社招中常见的面试题。虽然每次复习后可能会遗忘,但隔一段时间再复习一次还是很有帮助的。排序的方式主要分为内部排序和外部排序。内部排序仅使用内存完成,适合数据量不大的情况;而外部排序需要使用外部存储,当数据量太大时才适用。本文将介绍几种常见的内部排序算法,后续可以复习更多算法。

冒泡排序

冒泡排序通过逐次遍历数组,获取最大值或最小值,并将其移动到数组的末尾或开头。具体步骤如下:

  • 外层循环遍历数组,遍历次数等于数组的长度减一。
  • 内层循环从当前外层循环的起始位置开始,向右遍历,比较相邻元素。
  • 如果当前元素大于后一个元素,则交换它们的位置。
  • 内层循环完成后,最大值会被移动到当前位置的末尾。
  • 代码实现:

    public static void main(String[] args) {    int arr[] = {8, 5, 3, 2, 4};    for (int i = 0; i < arr.length; i++) {        for (int j = 0; j < arr.length - i - 1; j++) {            if (arr[j] > arr[j + 1]) {                int temp = arr[j + 1];                arr[j + 1] = arr[j];                arr[j] = temp;            }        }    }}

    排序过程示例:输入数组:8,5,3,2,4输出结果:1,2,3,5,8

    转载地址:http://hvuj.baihongyu.com/

    你可能感兴趣的文章
    Plotly:如何使用 Python 对绘图对象条形图进行颜色编码?
    查看>>
    Plotly:如何使用 updatemenus 更新一个特定的跟踪?
    查看>>
    Plotly:如何使用长格式或宽格式的 pandas 数据框制作线图?
    查看>>
    Plotly:如何向烛台图添加交易量
    查看>>
    Plotly:如何在 plotly express 中找到趋势线的系数?
    查看>>
    Plotly:如何在桑基图中设置节点位置?
    查看>>
    pm2 start命令中的json格式详解
    查看>>
    pm2启动报错
    查看>>
    pm2通过配置文件部署nodejs代码到服务器
    查看>>
    PML调用PDMS内核命令研究
    查看>>
    PMM安装-第一篇
    查看>>
    PMP知识要点(第九章)
    查看>>
    PNETLab 镜像包官方下载太慢?不急,最新版本PNET_4.2.10分享!
    查看>>
    POCO库中文编程参考指南(4)Poco::Net::IPAddress
    查看>>
    Quartz基本使用(二)
    查看>>
    POC项目安装与使用指南
    查看>>
    Podman核心技术详解
    查看>>
    pods 终端安装 第三方框架的一些命令
    查看>>
    Podzielno
    查看>>
    PoE、PoE+、PoE++ 三款交换机如何选择?一文带你了解
    查看>>