冒泡排序
思想
- 对比相邻的元素值,如果满足条件就交换元素值,把较小的元素值移动到数组前面,把大的元素值移动到数组后面(也就是交换两个元素的位置),每轮内循环都会把剩余序列中的最大数放到后面,这样数组元素就像气泡一样从底部上升到顶部。
算法
- 在双层循环中实现,其中外层循环控制排序轮数,总循环次数为要排序数组的长度减 1。而内层循环主要用于对比相邻元素的大小,以确定是否交换位置,对比和交换次数依排序轮数而减少。
代码
public void bubbleSort(int nums[]) {
int temp;
for (int i = 0; i < nums.length; i++) {
for (int j = 1; j < nums.length-i; j++) {
if(nums[j]<nums[j-1]){
temp=nums[j-1];
nums[j-1]=nums[j];
nums[j]=temp;
}
}
}
}