java之选择排序
- package?com.lamp.sort; ????public?class?SelectSort?{ ??????public?static?void?main(String[]?args)?{ ??????????int[]?data?=?{3,1,10,2,8,4}; ??????????sortArray(data); ??????????for?(int?i?=?0;?i?<?data.length;?i++)?{ ??????????????System.out.println(data[i]); ??????????} ??????} ?????? ??????/** ??????*?选择排序的原理其实很简单,就拿数组3,1,10,2,8,4来说,第一次for循环将最小的数放在第一位,第一次排序 ??????*?后的数组为1,3,10,2,8,4,接着对剩下的数3,10,2,8,4用相同方法进行排序,依次类推,知道将所有的数字 ??????*?排好顺序 ??????*/??????public?static?void?sortArray(int[]?data)?{ ??????????for?(int?i?=?0;?i?<?data.length-1;?i++)?{ ??????????????for?(int?j?=?i+1;?j?<?data.length;?j++)?{ ??????????????????if(data[i]?>?data[j]){ ??????????????????????swap(data,?i,?j); ??????????????????} ??????????????} ??????????} ??????} ????????private?static?void?swap(int[]?data,?int?i,?int?j)?{ ??????????int?temp??=?data[i]; ??????????data[i]?=?data[j]; ??????????data[j]?=?temp; ??????} ??}??
?
转自:http://liaokang-java.iteye.com/blog/1141922