java选择排序

  【选择排序】

  排序常常用到,我们可以遐想,在excel里,当用户用来排成绩高低时,便会用到排序算法,下面谈谈选择排序,

排序思想:从所有待排数据中找出最小的数据放在起始位置,再找出第二小的数据放在起始位置的后一位置,以此类推。

实现思路:数组里的第一个元素先和第二个元素比较,若第二个小,换位置,再让第一元素和第三元素比较...;找到最小元素后,让第二元素和第三元素比较,以此类推。

 1 //数组选择排序。
 2 public class Array
 3 {
 4     public static void main(String[] args)
 5     {
 6         int[] arr = {34,19,11,109,3,56};
 7         System.out.print("排序前:");
 8         printArray(arr);
 9         System.out.println();
10         selectSort(arr);
11         System.out.print("排序后:");
12         printArray(arr);
13     }
14     public static void printArray(int[] arr)  //提高程序的复用性 
15     {
16         System.out.print("[");
17         for(int x=0;x<arr.length; x++) 
18         {
19             if(x!=arr.length-1)
20                 System.out.print(arr[x]+",");
21             else
22                 System.out.print(arr[x]+"]");
23         }
24     }
25     //遍历数组功能。
26     public static void selectSort(int[] arr) //返回值类型为void,数组里面的数据已被更改过,故不用返回
27     {
28         for(int x = 0;x<arr.length-1;x++ ) //外循环最后的一个数不需要比较
29         {
30             for(int y = x+1;y<arr.length;y++) //内循环比较的是外循环当前值的后面数值
31             {
32                 if(arr[x]>arr[y])
33                 {
34                 int temp = arr[x];
35                 arr[x] = arr[y];
36                 arr[y] = temp;
37                 }
38             }
39         }
40     }
41     
42     
43 }

运行结果: 

该程序很好第地体现了代码的复用性,java函数封装。 

posted @ 2018-01-16 15:16  盖盖chen  阅读(161)  评论(0编辑  收藏  举报