如何用java代码实现选择排序和冒泡排序
人气:0冒泡排序和选择排序是排序算法中比较简单和容易实现的算法。冒泡排序的思想为:每一次排序过程,通过相邻元素的交换,将当前没有排好序中的最大(小)移到
数组的最右(左)端。而选择排序的思想也很直观:每一次排序过程,我们获取当前没有排好序中的最大(小)的元素和数组最右(左)端的元素交换,循环这个过
程即可实现对整个数组排序。 选择排序的平均时间复杂度比冒泡排序稍高
操作方法
- 01
打开myeclipse工具,新建一个工程,并新建一个包,在该包下新建一个类。注意类名首字母必须大写,这是java代码的命名规范。
- 02
在该Demo1类下,写一个静态的select()方法。用来写选择排序的方法。参数为 需要排序的整数数组。代码:public static void select(int[] arr) { for (int x = 0; x < arr.length; x++) { for (int y = x + 1; y < arr.length; y++) { if (arr[x] > arr[y]) { int temp = arr[x]; arr[x] = arr[y]; arr[y] = temp; } } } System.out.println("排序过后的数:"); for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } }
- 03
在该Demo1类下,写一个静态的maopao()方法。用来写冒泡排序的方法。参数为 需要排序的整数数组。代码: public static void maopao(int[] arr) { for (int x = 0; x < arr.length; x++) { for (int y = 0; y < arr.length - x - 1; y++) { if (arr[y] > arr[y + 1]) { int temp = arr[y]; arr[y] = arr[y + 1]; arr[y + 1] = temp; } } } System.out.println("排序过后的数:"); for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } }
- 04
在主函数中调用maopao()方法。右键并点击 run as ,观察控制台上输出的结果,从小到大排序。
- 05
在主函数中调用select()方法。右键并点击 run as ,观察控制台上输出的结果,从小到大排序。
- 06
选择排序和冒泡排序的区别在于算法的实现不同,具体图解见下图。
特别提示
注意 :选择排序和冒泡排序的区别,详见图中红色框标记中的内容。
加载全部内容