Java的三种常用排序

  • 冒泡排序
  • 选择排序
  • 工具类排序

建议直接copy代码,运行一下以便以理解

import java.util.Scanner;
import java.util.Arrays;class BubbleSort
{public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("长度:");int len = sc.nextInt();int[] arr = new int[len];for(int i =0;i<arr.length;i++){System.out.println("第"+(i+1)+"数:");arr[i]=sc.nextInt();}bubbleSort(arr);//冒泡排序;selectionSort(arr)//选择排序;Arrays.sort(arr);//利用Java类来排序.for(int e :arr){System.out.print(e+"\t");}}public static void bubbleSort(int[] arr){for(int i= 1; i<arr.length;i++){//控制轮数:for(int j = 0;j < arr.length - i;j++){if(arr[j] > arr[j+1]){//交换int temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}}}for(int e:arr){//强化遍历System.out.print(e+"\t");}System.out.println("升序冒泡over");}
/*** 选择排序: 思路: 每一轮找个基准值:在基准值上放一个比较小的数.* 定义一个变量k用于记录每轮最小值的下标,以便交换.*/public static void selectionSort(int[] arr){for(int i =0;i<arr.length-1;i++){int k=i;for(int j = k+1;j<arr.length;j++){if(arr[k]>arr[j])k=j;}//防止过度交换:因为一轮后k值没变的话,就没必要交换.if(k!=i){int temp = arr[i];arr[i] = arr[k];arr[k] = temp;}}for(int e :arr){System.out.print(e+"\t");}System.out.println("选择排序...over");}
}

JavaSE系列——Java的三种常用排序(Demo)相关推荐

  1. 《JAVASE系列》抽象类与接口

    <JAVASE系列>抽象类与接口 文章目录 <JAVASE系列>抽象类与接口 前言 1.抽象类 1.1抽象类是什么? 1.2 抽象的语法与细节 1.3抽象类的意义与作用 2.接 ...

  2. JVM调优系列--Java命令选项(参数)--大全/详解/常用

    原文网址:JVM调优系列--Java命令选项(参数)--大全/详解/常用_IT利刃出鞘的博客-CSDN博客 简介 说明        本文介绍Java的java命令用法,包括:常用用法.选项大全. J ...

  3. 微信小程序:商城系列专辑(开发指南+精品Demo)

    商城开发指南: 微信小程序商城模块 | 链接 使用zanui开发小程序微商城(模板组件的开发规范)| 链接 ecshop商城开发:用户信息的获取和缓存,地址信息的缓存 | 链接 微信小程序商城 - 基 ...

  4. 【Java】Java连接Mysql数据库的demo示例

    [Java]Java连接Mysql数据库的demo示例 1.安装mysql数据库 2.下载java-mysql-connector.jar包 3.完成java配置 4.写java代码运行测试 1.安装 ...

  5. [Java基础] sort方法--------排序的那些事

    引言 在学习Java过程中,排序sort是我们常用的功能:在Java里,数组有Arrays.sort()可以排序,集合则是Collections.sort()方法排序:默认情况下是升序排列,但是降序又 ...

  6. Python 常用排序Demo|冒、插、快、希等入门算法

    Python实现日常排序Demo 冒泡排序 import randomlists = random.sample(range(0, 100), 10)print("冒泡排序".ce ...

  7. C语言三种常见排序算法

    该博文为原创文章,未经博主同意不得转载,如同意转载请注明博文出处 本文章博客地址:https://cplusplus.blog.csdn.net/article/details/105112802 三 ...

  8. java中集合的排序

    java中集合的排序 import java.util.Set; import java.util.HashSet; import java.util.List; import java.util.A ...

  9. synchronized【Java】中使用的demo

    synchronized[Java]中使用的demo 没有synchronized的效果: package Action;public class syn {static int count=10;s ...

最新文章

  1. 一万年太久,只争朝夕
  2. iOS---GCD的三种常见用法
  3. 两个空间点直接距离投影公式_HBAO(屏幕空间的环境光遮蔽)
  4. 调优 | 别再说你不会 JVM 性能监控和调优了
  5. js判断对象为空_在 JavaScript 中如何检查对象为空
  6. ffmpeg -视频旋转和高清转码示例
  7. mmseg 同义词分析器 SolrSynonymParser
  8. 杭电acm 1205 吃糖果
  9. Blake2b算法 php,Blake2b算法是什么?Blake2b算法币种盘点
  10. arduino 土壤温湿度传感器_arduino测量土壤湿度自动浇水提醒 - 全文
  11. matlab空间光调制器,空间光调制器原理与应用
  12. “被授权”泛滥 个人信息保护怎么管?
  13. 【与时俱进,智慧社区应运而生】
  14. 简述html的文档基本结构,【简答题】简述 HTML 文档的基本结构。
  15. 突破传统—复旦大学大数据学院张力课题组提出语义分割全新方案
  16. 在Js和Java自动生成账号的方法
  17. python 实现图片转卡通图
  18. ECHO、IF、REM等命令介绍
  19. 英语字根(转)--推荐
  20. 雷军:何以英雄背骂名!

热门文章

  1. 黑苹果亮度调节 小太阳
  2. Windows系统Git安装教程,超详细的安装过程!附软件资料~
  3. 如何做好数字化运营,打造战略落地的最佳武器?他们这么说|2021全球数字价值峰会...
  4. 史上最全Maven教程(四)
  5. android 点击查看大图_你是不是遇到,在花瓣网部分图片详情页,点击“放大镜”无法预览高清大图?...
  6. matlab里颜色直方图的画法
  7. 人工智能 六步走 学习路线
  8. [CocosCreator]热更新插件使用心得以及注意事项
  9. IDA PRO:庆祝成立创新 30 周年
  10. C++历史背景 [C++开发实战](边学边练哈 (#^.^#)~)