作为一个<strong>iOS</strong>开发人员,最近自学Java,温习一下基本的排序方法,发现写出来还挺费劲的,已经是一条废🐶了。
简介:
<strong>冒泡排序</strong>, 最简单的排序之一,原理就是比较临近的两个元素,大的向后小的向前,把大的交换到右端。
<strong>举例说明:</strong>
现在有一个数组: int[] numArr = {4,31,1,22};
<strong>第一次比较如下:</strong>
4和31比较 4<31 交换后 {4,31,22,1};
31和22比较 31>22 交换后 {4,22,31,1};
31和1比较 31>1 交换后 {4,22,1,31};
<strong>第二次比较如下:</strong>
4和22比较 4<22 不交换 {4,22,1,31};
22和1比较 22>1 交换后 {4,1,22,31};
<strong>第三次比较如下:</strong>
4和1比较 4>1 交换后 {1,4,22,31};
<strong>具体代码如下:</strong>
public class Sort {
public static void main(String[] args) {
int[] numArr = {4,31,22,1};
sortMethod(numArr);
for (int element : numArr) {
System.out.print(" "+ element);
}
}
static int[] sortMethod(int[] numArr) {
for (int i = 0; i < numArr.length-1; i++) {
for (int j = 0; j < numArr.length-1-i; j++) {
if (numArr[j] > numArr[j+1]) {
int temp = numArr[j];
numArr[j] = numArr[j+1];
numArr[j+1] = temp;
}
}
}
return numArr;
}
}
<strong>命令台输出如下:</strong>
1 4 22 31