数据结构_排序_01
2014-03-10 00:04
183 查看
选择排序
冒泡排序
插入排序
/** * 选择排序 * <p>1、左边先有序</p> * @param array */ public void selectSort(int[] array) { for (int i = 0; i < array.length - 1; i++) { int tmp = i; for (int j = i + 1; j < array.length; j++) { if (array[tmp] > array[j]) { tmp = j; } } if (tmp != i) { int tmpV = array[tmp]; array[tmp] = array[i]; array[i] = tmpV; } System.out.println("I: " + i + ";J: " + tmp + " arr:" + Arrays.toString(array)); } }
冒泡排序
/** * 冒泡排序 * <p>1、右边先有序</p> * @param a 参与排序的数组 */ public void sortB(int[] array) { for (int i = array.length - 1; i >= 1; i--) { for (int j = 0; j < i; j++) { if (array[j] > array[j + 1]) { int tmp = array[j]; array[j] = array[j + 1]; array[j + 1] = tmp; } System.out.println("I:" + i + "J: " + j + " arr:" + Arrays.toString(array)); } } }
插入排序
/** * 插入排序 * @param array */ public void insertSort(int[] array) { int in = 0, out = 0; for (out =1; out < array.length; out++) { int tmp = array[out]; in = out; while (in > 0 && array[in - 1] >= tmp) { array[in] = array[in - 1]; --in; } array[in] = tmp; System.out.println("in: " + in + " out: " + out + " array: " + Arrays.toString(array)); } System.out.println("in: " + in + " out: " + out + " array: " + Arrays.toString(array)); }
相关文章推荐
- 程序员面试题精选100题(01)-把二元查找树转变成排序的双向链表[数据结构]
- python数据结构学习笔记-2016-10-24-01-排序列表
- scala数据结构和算法-01-用scala实现合并排序
- 程序员面试题精选100题(01)-把二元查找树转变成排序的双向链表[数据结构]
- 数据结构练习(01)把二元查找树转变成排序的双向链表
- python数据结构学习笔记-2016-11-24-01-快速排序
- 数据结构01之简单排序
- python数据结构学习笔记-2016-11-26-01-链表排序
- python数据结构学习笔记-2016-10-28-01-带尾指针的链表和排序链表
- 数据结构 PAT 01-复杂度2 Maximum Subsequence Sum
- 【数据结构专题-01】数据结构基本介绍
- 数据结构-算法: 分配排序(基数分配排序法)
- 数据结构-算法: 基数排序
- 数据结构学习笔记-排序3
- python数据结构学习笔记-2016-12-03-01-堆排序
- 【数据结构】直接插入排序
- 数据结构(二)排序总结
- 数据结构_静态链表直接插入排序
- python数据结构学习笔记-2017-01-08-01-N皇后问题、迷宫问题和跳马问题的递归解决
- 排序算法01:选择排序