JAVA中有哪几种常用的排序方法1、冒泡排序
冒泡排序是一个比较简单的排序方法 。在待排序的数列基本有序的情况下排序速度较快 。若要排序的数有n个java后台代码怎么排序,则需要n-1轮排序java后台代码怎么排序,第j轮排序中,从第一个数开始,相邻两数比较,若不符合所要求的顺序 , 则交换两者的位置;直到第n+1-j个数为止 , 第一个数与第二个数比较,第二个数与第三个数比较,......,第n-j个与第n+1-j个比较,共比较n-1次 。此时第n+1-j个位置上的数已经按要求排好,所以不参加以后的比较和交换操作 。例如java后台代码怎么排序:第一轮排序java后台代码怎么排序:第一个数与第二个数进行比较,若不符合要求的顺序,则交换两者的位置,否则继续进行二个数与第三个数比较...... 。直到完成第n-1个数与第n个数的比较 。此时第n个位置上的数已经按要求排好,它不参与以后的比较和交换操作;第二轮排序java后台代码怎么排序:第一个数与第二个数进行比较,......直到完成第n-2个数与第n-1个数的比较;......第n-1轮排序:第一个数与第二个数进行比较 , 若符合所要求的顺序,则结束冒泡法排序;若不符合要求的顺序,则交换两者的位置,然后结束冒泡法排序 。
共n-1轮排序处理 , 第j轮进行n-j次比较和至多n-j次交换 。
从以上排序过程可以看出,较大的数像气泡一样向上冒,而较小的数往下沉 , 故称冒泡法 。
2、选择排序
选择法的原理是先将第一个数与后面的每一个数依次比较,不断将将小的赋给第一个数,从而找出最小的,然后第二个数与后面的每一个数依次比较,从而找出第二小的,然后第三个数与后面的
3、插入排序
插入排序的原理是对数组中的第i个元素 , 认为它前面的i-1个已经排序好,然后将它插入到前面的i-1个元素中 。插入排序对少量元素的排序较为有效.
4、快速排序
快速排序是对冒泡排序的一种改进 。它的基本思想是:通过一次排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要?。?然后再按次方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此大道整个数据变成有序序列 。
Java几种简单的排序源代码给你介绍4种排序方法及源码,供参考
1.冒泡排序
主要思路: 从前往后依次交换两个相邻的元素,大的交换到后面 , 这样每次大的数据就到后面 , 每一次遍历,最大的数据到达最后面 , 时间复杂度是O(n^2) 。
public static void bubbleSort(int[] arr){
for(int i =0; iarr.length - 1; i++){
for(int j=0; jarr.length-1; 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];
}
}
}
}
2.选择排序
主要思路:每次遍历序列,从中选取最小的元素放到最前面,n次选择后 , 前面就都是最小元素的排列了,时间复杂度是O(n^2) 。
public static void selectSort(int[] arr){
for(int i = 0; i arr.length -1; i++){
for(int j = i+1; jarr.length; j++){
if(arr[j]arr[i]){
arr[j] = arr[j]^arr[i];
arr[i] = arr[j]^arr[i];
arr[j] = arr[j]^arr[i];
}
}
}
}
3.插入排序
主要思路:使用了两层嵌套循环,逐个处理待排序的记录 。每个记录与前面已经排好序的记录序列进行比较 , 并将其插入到合适的位置,时间复杂度是O(n^2) 。
public static void insertionSort(int[] arr){
int j;
推荐阅读
- 小程序孝感随手拍怎么用,随手拍小程序主要分为
- linux复制的命令,linuxs复制命令
- 球球英雄怎么投射到电脑上,球球英雄怎么和好友一起玩
- 铝板直播教程,铝板做法
- 怎么保存java代码 java代码怎么保存到桌面
- u盘怎么显示在桌面,u盘怎么显示在桌面悬浮窗
- 字典javascript,字典查字
- 男生喜欢养成游戏吗小说,男生喜欢养成女生吗
- 关于华为云盘照片怎么移到硬盘的信息