下面要给大家讲到的就是java选择排序法的内容,下面就一起通过文章来进行一下了解吧,有详细的讲解哦。
假设,存在一个int类型的数组number,这个数组当中,元素依次是13、15、 24、99、4和1,假如,使用冒泡排序进行两两相邻比较,第一趟排序后的结果:
13、15、24、4、1、99
第二趟排序后的结果:
13、15、4、1、24、99
第三趟排序后的结果:
13、4、1、15、24、99
第四趟排序后的结果:
4、1、13、15、24、99
第五趟排序后的结果:
1、4、13、15、24、99
使用选择排序法也能够对上面数组当中的元素进行排序,可是,它和冒泡排序不同,选择排序是指每一趟从待排序的数据元素中选出最大(或最小)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。
例,使用选择排序法重新对number数组当中的元素进行排序,第一趟排序后的结果:
13、15、24、1、4、99
第二趟排序后的结果:
13、15、4、1、24、99
第三趟排序后的结果:
13、1、4、15、24、99
第四趟排序后的结果:
4、1、13、15、24、99
第五趟排序后的结果:
1、4、13、15、24、99
利用选择排序方法通过编程的方式实现对number数组的排序,并输出已排序的数组元素,代码:
int[] number = { 13 , 15 , 24 , 99 , 4 , 1 }; String end = "\n"; int index; for (int i = 1; i < number.length; i++) { index = 0; for (int j = 1; j <= number.length - i; j++) { if (number[j] > number[index]) { index = j; // 查找最大值 } } end = number[index] + " " + end; // 定位已排好的数组元素 int temp = number[number.length - i]; number[number.length - 1] = number[index]; number[index] = temp; System.out.print("【"); for (int j = 0; j < number.length - i; j++) { System.out.print(number[j] + " "); } System.out.print("】" + end); }
执行上述代码,查看每一趟排序后的结果,运行结果:
【13 15 24 1 4 】99 【13 15 4 1 】24 99 【13 1 4 】15 24 99 【4 1 】13 15 24 99 【1 】4 13 15 24 99
更多相关java基础知识,请继续关注奇Q工具网来进行了解吧。
推荐阅读: