// 冒泡排序
// 两两比较,大的往后放,
// 外层循环,两两比较,小的往前放,只可能把最大的数字换到数组最后一位。
// 第一位可能不是最小的。所以要多次循环,循环条件为数组内容的length值
for (int c = 0;c < nums.length;c++){
// 内层for循环,循环遍历的比较两个数字的大小。
// 因为是依次比较,大的向后,最后一位在外围循环一次以后最后一位一定是该数组内的最大值。则循环次数可以依次减少.
for (int i = 0;i < nums.length - 1 - c;i++){
// 判断语句,第一次循环判断下标为1(i+1=1)的数值是否大于下标为0(nums[i],i=0)的数字。若成立则互换两个数值。
if (nums[i] > nums[i + 1]){
int temp = nums[i];
nums[i] = nums[i + 1];
nums[i + 1] = temp;
}
}
}
冒泡排序的思路及代码
最新推荐文章于 2023-05-30 23:03:22 发布