此次的数组排序其实算法和之前的C语言一摸一样
复习一遍:
对于排序,只有冒泡排序是记得最牢的,有时候选择法知道其意义但是码出来还是有点露洞。
选择法排序
选择法排序的思路:
把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来
比较完后,第一位就是最小的
然后再从第二位和剩余的其他所有进行比较,只要比第二位小,就换到第二个位置来
比较完后,第二位就是第二小的
以此类推
for (int j = 0; j < a.length-1; j++) {
for (int i = j+1; i < a.length; i++)
就这种模板
冒泡法排序
冒泡法排序的思路:
第一步:从第一位开始,把相邻两位进行比较
如果发现前面的比后面的大,就把大的数据交换在后面,循环比较完毕后,最后一位就是最大的
第二步: 再来一次,只不过不用比较最后一位
以此类推
for (int j = 0; j < a.length; j++) {
for (int i = 0; i < a.length-j-1; i++)
这里就是重点了,学好了很便捷
增强型for循环:
相较之前 写法更便捷 但是理解也上升一个层次 逼格也上升了。
示例:
int values [] = new int[]{18,62,68,82,65,9};
//常规遍历
for (int i = 0; i < values.length; i++) {
int each = values[i];
System.out.println(each);
}
//增强型for循环遍历
for (int each : values) {
System.out.println(each);
}
两种的打印效果一致
值得注意的是:
增强型for循环的int each : values 是指遍历整个数组依次赋值给each 也就是对于增强型for循环的理解 最直观还是常规遍历,把常规遍历的那几条语句缩减成这一条 要理解之后便于运用
本文回顾了编程基础知识中的两种经典排序算法——选择排序和冒泡排序。选择排序通过每次选取最小元素逐步构建有序序列,而冒泡排序则通过相邻元素的不断交换确保大元素逐渐下沉。此外,还介绍了增强型for循环在数组遍历中的应用,使得代码更加简洁。无论你是初学者还是需要复习的老手,这篇文章都是不错的参考资料。
1134

被折叠的 条评论
为什么被折叠?



