java冒泡排序 快速排序_Java必备-冒泡排序,选择排序,快速排序(纯代码实现)
importjava.util.Arrays;/*** 是将无序a[0],a[1]...a[n],将其升序排序,比较a[0].a[1]的值,若结果为1,则交换两者的值,否则不变,接着继续向下比较.最后比较a[n-1].a[n]的结果,结束后,a[n]的值为当前数组中最大值.接着继续将a[1]~a[n-1]进行比较.一共处理n-1轮后, 就是以升序排列
*
* 优点: 稳定
* 缺点: 耗时长,每次只是移动两个相邻的数据做对比
* @Description Java冒泡排序
* @Author : Dy yimting@yeah.net
* @Date : 2019/3/26,14:06
* @Project : Java_Sort
* @Version : 1.0
**/
public classBubbleSort {public static voidmain(String[] args) {int[] arr = {34, 2, 146, 76, 45, 3, 6, 7};long start =System.nanoTime();
sort(arr);long end =System.nanoTime();
System.out.println("排序后 : " +Arrays.toString(arr));
System.out.println("运行时间:" + (end - start) + " ns");
}/***@paramarr 传入的数组
* 第一次外层循环 ,和第一层内层循环内部结果
* 34 2 146 76 45 3 6 7
* 2 34 146 76 45 3 6 7
* 2 34 146 76 45 3 6 7
* 2 34 76 146 45 3 6 7
* 2 34 76 45 146 3 6 7
* 2 34 76 45 3 146 6 7
* 2 34 76 45 3 6 146 7
* 2 34 76 45 3 6 7 146
* .....................*/
public static void sort(int[] arr) {//外侧循环控制整个循环的次数
for (int i = 0; i < arr.length - 1; i++) {//内侧循环对比两个值
for (int j = 0; j < arr.length - 1 - i; j++) {//如果第一个值比第二个值大//第一个值就与第二个值进行交换
if (arr[j] > arr[j + 1]) {
arr[j]= arr[j] ^ arr[j + 1];
arr[j+ 1] = arr[j] ^ arr[j + 1];
arr[j]= arr[j] ^ arr[j + 1];
}
}
}
}
}
java冒泡排序 快速排序_Java必备-冒泡排序,选择排序,快速排序(纯代码实现)相关推荐
- c语言选择排序法程序设计,C语言基础之选择排序算法和代码
在利用C语言进行编写程序的过程中,我们会常常通过算法及其代码来进行相关程序的编写工作.今天课课家笔者先给大家介绍C语言算法中的选择排序算法以及代码.那么到底什么是选择排序算法呢?下面由笔者慢慢道来. ...
- 冒泡排序 选择排序 快速排序(C语言)
#include <stdio.h> #include <stdlib.h> #include <time.h> //用到了time函数#define arrayS ...
- python版 常用排序算法 思路加详解 冒泡排序、快速排序、插入排序、选择排序
注:这里所有排序操作都以从小到大排列为例,想要从大到小排的自行修改代码即可 目录 一.冒泡排序 思路: 步骤: 解析: 二.快速排序 思路: 步骤: 代码: 三.插入排序 思路: 代码: 四.选择排序 ...
- 冒泡排序+选择排序+快速排序
一. 冒泡排序 冒泡思想比较简单,直接上代码 void BubbleSort(int num[], int n){int i,j;for(i=0;i<n;i++){for(j=i;j<n; ...
- java排序算法代码_Java实现八种排序算法(代码详细解释)
package八大排序算法;importjava.util.Arrays;importorg.junit.Test;/*** 1.插入排序 直接插入排序.希尔排序 折半插入排序 * 2.交换排序 冒泡 ...
- 排序算法python实现_用Python,Java和C / C ++实现的选择排序算法
排序算法python实现 The Selection Sort Algorithm sorts the elements of an array. In this article, we shall ...
- python 选择排序 快速排序
选择排序 a = [1, 9, 8, 4, 3, 5, 4, 8] leng = len(a)for i in range(leng - 1):litt_index = ifor j in range ...
- 计算机编程语言排序,计算机入门必备算法——选择排序法
引言 昨天我们学习了二分查找法,但是二分查找法使用的前提必须是有序的数组或者列表,(当然很多的算法都是仅在数据有序的前提下才能使用) 但是在实际工作中,我们接收到的数组不可能都是有序的,那怎么办呢?于 ...
- 【基础不牢地动山摇】一遍记住 Java 面试中常用的八种排序算法与代码实现!...
作者:KaelQ www.jianshu.com/p/5e171281a387 1.直接插入排序 经常碰到这样一类排序问题:把新的数据插入到已经排好的数据列中. 将第一个数和第二个数排序,然后构成一个 ...
最新文章
- 网络推广软文浅谈网站优化过程中图片的优化技巧和注意事项!
- JSON动态解析()
- 2021-04-09 linux的shell脚本简单教程
- MySQL之 从复制延迟问题排查
- 深入理解Python中的元类(metaclass)
- Linux内核模块开发常用内核接口
- 免费UNIX体验中心
- cuda并行编程之求解ConjugateGradient(共轭梯度迭代)丢失dll解决方式
- [简单]1.宝石和石头
- 如何检查有哪些尝试入侵服务器IP?有哪些命令?
- Spark小文件合并
- A4纸是多少像素大小?
- MongoDB 日志管理
- adb设置代理与取消代理
- Python感知器算法
- 互联网月饼大赏,你最喜欢哪家的?
- QML类型:Repeater
- AD5541输出控制
- 想要安装ZBrush!却不知道对电脑有什么特别的要求?
- 简单描述计算机主机不启动故障,电脑启动不了是什么问题