java 正序排序_java排序之冒泡排序
性能优化冒泡排序
1、举个例子:int[] array = {2,4,9,7,6,5};
第一轮2和4进行比较,2<4,位置不变。再4和9进行比较,4<9,位置不变。再9和7进行比较,9>7,9和7的位置互换。再9和6进行比较,9>6,9和6的位置互换。再9和5进行比较,9>5,位置互换。第一轮比较的结果就是2 4 7 6 5 9。
第二轮2和4进行比较,2<4,位置不变。再4和7进行比较,4<7,位置不变。再7和5进行比较,7>6,7和6的位置互换。再7和5进行比较,7>5,7和5的位置互换。第二轮的结果就是2 4 6 5 7 9。
第三轮2和4进行比较,2<4,位置不变。再4和6进行比较,4<6,位置不变。再6和5进行比较,6>5,6和5的位置互换。第三轮的结果是2 4 5 6 7 9(已经是我们想要的结果了)。
2、具体代码如下所示:
import java.util.Arrays;
public class Test {
public static void arraySort(int[] arr) {
int temp;// 定义一个临时变量
for (int i = 0; i < arr.length - 1; i++) {// 冒泡趟数,n-1趟
boolean flag = true;
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j + 1] < arr[j]) {
flag = false;
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
// 如果当轮没有发生位置变化,说明已经排序完毕,就没有必要再进行循环了
if (flag) {
break;
}
}
}
public static void main(String[] args) {
int arr[] = new int[] { 2, 4, 9, 7, 6, 5 };
arraySort(arr);
System.out.println(Arrays.toString(arr));
}
}
java 正序排序_java排序之冒泡排序相关推荐
- pandas使用sort_values函数对dataframe的日期数据列进行排序(设置ascending参数进行正序或者倒序排序)
pandas使用sort_values函数对dataframe的日期数据列进行排序(设置ascending参数进行正序或者倒序排序) 目录
- java 正序a~z_Flutter MapString, dynamic 、ListString a-z 排序
字符串从 a-z 排序. Map map = XXX, List keys = map.keys.toList(); // key排序 keys.sort((a, b) { List al = a.c ...
- java 正序a~z_java 策略模式,list集合,实现id 姓名年龄正序倒序排序(如果年龄或者姓名重复,按id正序排序)...
策略模式:1.抽象策略类,通常由一个接口或者抽象类实现. 2.具体实现类 3.环境角色类,持有一个策略类的引用,最终给客户端调用. 好了,上代码: package execrise; import j ...
- Java 正序、逆序排序
Java 如何正序.逆序排序? 这里的知识点包括: Collections.sort() 方法提供集合类正序排序. Collections,reverse() 方法可以将排序好的集合类进行逆序. 如果 ...
- java 正序a~z_2019届vivo秋招笔试题【字符串排序】【链表奇数位正序偶数位逆序】【最长回文子串】...
字符串排序 1.题目描述 请对组字符串进行排序,字符串由大小写字母和数字组成,需要满足以下比较规则 1.长度不同时,长度较短在排前面 2.长度相同时,按照字典顺序排列(AaBb-Zz, 0-9顺序), ...
- java 正序排序_Java8对list排序(正序倒序)
话不多说直接上干货 这里我写了一个list数组里边add了三个Order实体(我的ucId,price,qty都是int类型) 第一个实例:我对price进行从小到大的排序(我的price是int类型 ...
- java基础排序_Java排序算法-Java入门|Java基础课程
1. 课程目标排序是任何语言都会使用到的功能之一,然成果排序的算法有很多,对空间的要求及其时间效率也不尽相同. 本文章以Java语言示例,通过对空间要求.时间效率要求,来对比各种排序算法的使用场景 2 ...
- java的排序_java排序
Bubble sort 冒泡排序 一种简单的排序算法.它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经 ...
- java 全排序_Java排序算法全
Java排序算法代码 零. 排序基类 package com.yunche.sort; /** * @ClassName: BaseSort * @Description: * @author: yu ...
最新文章
- 注册中心 Eureka 源码解析 —— 应用实例注册发现(五)之过期
- python 日志输出模块--两种方法
- python3 打印异常堆栈信息
- OpenStack-MitakaCentos7.2双节点搭建--(四)Nova服务
- 数据分析方法有哪些_数据分析方法
- opencv中 .at<uchar>()和.ptr<uchar>()使用方法的区别
- 博弈论(二)完全信息静态博弈
- ESP8266—“ICACHE_FLASH_ATTR”宏——解释含义
- plsql developer 无法登录Oracle
- 程矢Axure夜话:Axure手机原型视频教程之图形解锁
- 用envi对遥感影像进行规则裁剪
- ui 名前空間の Aura コンポーネントの廃止
- 用 GNS3 做CCNA网络实验(4)
- 快手财报,广告、直播、电商齐头并进
- python制作浏览器
- vue使用d3数据可视化(柱状图、饼图、折线图 带坐标轴)
- JavaScript高级笔记_002_构造函数和原型
- 指针里的*符号是要靠近变量类型还是要靠近变量名称?
- <CSS3练习> CSS动画综合案例 热点图(含素材)
- 六年级计算机应用计划,《小学信息技术》六年级下册教学计划