Loading

摘要: 归并排序的两种方法 递归(自顶向下) 将一个大的无序的数组分成两个,然后拿出其中一个再分为两个···一直这样下取,直到最后剩下一个,那么这只包含一个元素的数组就是有序的了,然后将两个这样的数组通过merge方法有序的合并,一级一级,直到最开始的两个合并了就排序完了 先实现一个merge用来将两个有序 阅读全文
posted @ 2020-10-07 23:54 linzeliang 阅读(1283) 评论(0) 推荐(0)
摘要: 第一种(左右指针法) 我们取中间值作为基准值,又两个索引分别从左端和右端向中间靠拢,比较大小,将小于基准值的归到左边,大于基准值的归到右边,这时l与r可能都指向基准值的位置,但是下一步两个索引自增,l大于r(但是要保证不超出边界即left与right),这是l作为右半部分的新的递归的left,rig 阅读全文
posted @ 2020-10-07 12:03 linzeliang 阅读(562) 评论(0) 推荐(0)
摘要: 冒泡排序 时间复杂度O(n2)、空间复杂度O(1)、稳定、原地排序 冒泡排序就是比较与自己相邻的下一个数,如果下一个数比这个大,就交换,否则就进行下一个比较了,经过一轮,大的就会排到最后面去了,循环a.length - 1次即可,注意的是,每次比较只需要比较到倒数第二个,因为最后一个没有下一个与它进 阅读全文
posted @ 2020-10-07 00:17 linzeliang 阅读(178) 评论(0) 推荐(2)