Java泛型实现排序算法
来源:互联网 发布:国外虚拟手机号软件 编辑:程序博客网 时间:2024/05/16 09:30
package sort;import java.util.Arrays;import java.util.Comparator;/** * * * @author QuPeng * */public class GenericSortAlgorithm {/** * @param args */public static void main(String[] args) {Integer[] array = { Integer.valueOf(6), Integer.valueOf(8),Integer.valueOf(2), Integer.valueOf(4), Integer.valueOf(9),Integer.valueOf(3), Integer.valueOf(5), Integer.valueOf(90),Integer.valueOf(310), Integer.valueOf(67),Integer.valueOf(300), Integer.valueOf(78) };System.out.println(Arrays.toString(array));quickSort(array, 0, array.length - 1, new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {return o1 < o2 ? -1 : (o1 == o2 ? 0 : 1);}});System.out.println(Arrays.toString(array));}public static <T> void quickSort(T[] array, int lowIndex, int highIndex,Comparator<T> comparator) {if (lowIndex >= highIndex) {return;}int i = lowIndex;int j = highIndex;T key = array[lowIndex];while (true) {while (i < j) {if (comparator.compare(array[j], key) < 0) {array[i] = array[j];break;}j--;}while (i < j) {if (comparator.compare(array[i], key) > 0) {array[j] = array[i];break;}i++;}if (i == j) {array[j] = key;quickSort(array, lowIndex, j - 1, comparator);quickSort(array, j + 1, highIndex, comparator);return;}System.out.println(Arrays.toString(array));}}}
1 0
- Java泛型实现排序算法
- 排序算法Java泛型实现
- 排序算法java实现
- java算法:排序实现
- 排序算法Java实现
- java实现排序算法
- 排序算法(java实现)
- 排序算法Java实现
- 排序算法Java实现
- Java排序算法实现
- java排序算法实现
- java实现排序算法
- 排序算法 java实现
- 排序算法Java实现
- java实现排序算法
- 排序算法java实现
- java实现排序算法
- java 排序算法实现
- C99标准的新特性
- 【记录】STM32学习之第一个程序(点亮LED)
- Android App项目开发规范总结(二)
- C# \\ 转 \ url解码
- mobaxterm apt-get apt-cyg install error
- Java泛型实现排序算法
- Spring security的运行流程图
- Java基础--多态
- IOS 系统UI
- 将Android Library项目通过gradle导出为aar
- 人脸识别之PCA
- mfc使用动态库中类的问题
- Activity状态
- cocos2dx shader应用——sprite变灰