博客
关于我
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/

    你可能感兴趣的文章
    Python 开发者,这 7 个 VS Code 插件极力推荐
    查看>>
    python手把手视频_硬货 | 手把手带你构建视频分类模型(附Python演练))
    查看>>
    python 录音左右声道_Python分离立体声wav压缩文件的左右声道
    查看>>
    Python 循环异或对文件进行加解密
    查看>>
    Python开发环境搭建(附VMware安装包及虚拟机环境)
    查看>>
    python 微信扫码登录_python实现微信第三方网站扫码登录(Django)
    查看>>
    Python 快速下载依赖
    查看>>
    python实现非参数统计的Cochran检验 (附完整源码)
    查看>>
    python 怎么验证是否安装成功 scrapy
    查看>>
    Python 手写数字识别-1
    查看>>
    Python实现接口自动化测试库(JSON与Requests)详解
    查看>>
    Python 手写数字识别-3-sklearn中的几种算法
    查看>>
    python实现SSIM和MSSSIM计算 (附完整源码)
    查看>>
    Python 打开文件注意事项
    查看>>
    python 批量修改文件名_python windows下批量修改文件名
    查看>>
    Python 抓取网页乱码问题 以及EXCEL乱码
    查看>>
    python 抓取网页内容
    查看>>
    python 按照当前日期创建文件
    查看>>
    Python 接口并发测试详解
    查看>>
    Python 接口自动化 —— requests框架
    查看>>