用Java实现简单选择排序
2012-10-04 17:16
519 查看
package ch10; /** * 简单选择排序 * @author songjie * */ public class SelectSort { public static <T extends Comparable> boolean selectSort(T[] t){ if(t==null || t.length <= 1) return true; for(int i = 0; i<t.length-1; i++){ int pos = selectMinKey(t, i); T temp = t[i]; t[i] = t[pos]; t[pos] = temp; } return true; } /** * 返回最小的元素的索引 * @param t * @param start:开始的索引 * @return */ private static <T extends Comparable> int selectMinKey(T[] t, int startPos) throws IllegalArgumentException{ if(t==null || t.length-1-startPos<=0) throw new IllegalArgumentException("参数传递不正确!"); int pos = startPos; T min = t[pos]; for(int i=pos; i<=t.length-1 ;i++){ if(t[i].compareTo(min) < 0){ min = t[i]; pos = i; } } return pos; } public static void main(String[] args) { Integer[] arr = new Integer[]{1,2,5,7,4,2,3,9,7}; SelectSort.selectSort(arr); for(int i : arr){ System.out.println(i); } } }
相关文章推荐
- JAVA实现简单的冒泡排序与选择排序
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)
- java简单实现冒泡 快速 选择排序
- JAVA之冒泡排序与简单选择排序的实现
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)
- Java实现简单选择排序
- 用java实现简单选择排序的动态演示
- 程序员必知的8大排序(三)-------简单选择排序,堆排序(java实现)
- Java中实现简单的三大排序——冒泡、选择、插入
- 三种简单排序用java实现(选择排序,冒泡排序,插入排序)
- java实现七种排序 (插入排序, 希尔排序, 插入排序, 快速排序, 简单选择排序, 堆排序, 归并排序)
- 简单选择、冒泡、插入排序思想及Java实现代码
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)
- 排序之选择排序的java语言简单实现
- 最简单之Java实现冒泡排序、选择排序、插入排序、希尔排序、归并排序和快速排序(转载请注明出处)
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)
- 简单选择排序的Java实现、性能分析以及适用场景
- Java实现简单排序——冒泡、选择、插入、奇偶排序
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)