
数据结构
qq_42072311
这个作者很懒,什么都没留下…
展开
-
插入排序——直接插入排序
插入排序思想: 插入排序分有序区、无序区,最开始有序区没有元素,无序区为整个待排序区。排序时,每一趟排序将一个无序区的元素插入到有序区适当的位置,直到无序区的元素为空。 插入排序根据具体的排序算法不同,又分为直接插入排序、折半插入排序、希尔排序。直接插入排序: 直接插入排序,在寻找有序区的插入位置时,待插入元素和有序区元素依次比较。插接插入排序java实现: /** *...原创 2018-05-06 09:32:36 · 1038 阅读 · 0 评论 -
插入排序——折半插入排序
插入排序思想: 插入排序分有序区、无序区,最开始有序区没有元素,无序区为整个待排序区。排序时,每一趟排序将一个无序区的元素插入到有序区适当的位置,直到无序区的元素为空。 插入排序根据具体的排序算法不同,又分为直接插入排序、折半插入排序、希尔排序。折半插入排序: 折半插入排序,在寻找有序区的插入位置时,待插入元素和有序区中间元素比较,如果比中间元素小,在与前半部分有序区的中间元素比...原创 2018-05-06 10:16:19 · 294 阅读 · 0 评论 -
交换排序——快速排序
快速排序思想: 1、首先选择第一个元素作为基准(原则上可以是待排序中的任意一个元素,通常取第一个元素)。 2、先从右边比较,找出比基准元素小的元素,与基准交换位置(解释:基准元素的位置变化了,现在基准元素右边的元素都比基准元素大)。 3、再从左边比较,找出比基准元素大的元素,与基准元素交换位置(解释:基准元素的位置有变化了,现在基准元素左边的元素都比基准元素小)。 4、重复...原创 2018-04-28 01:25:02 · 532 阅读 · 0 评论 -
插入排序——希尔排序
插入排序思想: 插入排序分有序区、无序区,最开始有序区没有元素,无序区为整个待排序区。排序时,每一趟排序将一个无序区的元素插入到有序区适当的位置,直到无序区的元素为空。 插入排序根据具体的排序算法不同,又分为直接插入排序、折半插入排序、希尔排序。希尔排序: 又称缩小增量排序。实际上是分组插入排序 比较相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,...原创 2018-05-06 15:15:27 · 147 阅读 · 0 评论 -
交换排序——冒泡排序
交换排序思想: 在无序区中比较,发现两个元素顺序相反时进行交换,知道全都有序。 交换排序有 冒泡排序、快速排序。冒泡排序java实现:/** * 冒泡排序 * @param array 待排序数据 */ static void bubbleSort(int[] array) { int i, j, exchange; int tmp; int ...原创 2018-05-06 16:47:50 · 161 阅读 · 0 评论