算法
gzh_kevin
我是小白
展开
-
归并排序中的递归思想理解
这是我自己理解的利用归并排序对一个无序数组进行排序的简单过程。图中的波浪线就是每次执递归的时机。在我学习这个算法的时候遇到的困难:为什么使用的是双递归?这个原因在我认为是:因为归并过程是将两个数组进行归并,那么去哪里找这两个数组呢?就是通过双递归。这里比较重要的就是双递归了,什么是双递归呢?其实我们之前很早接触过双递归:斐波那契数列:下面是我自己的一点理解,可能解释的有点繁琐,...原创 2019-06-28 22:38:08 · 2042 阅读 · 3 评论 -
算法--排序--冒泡排序--JAVA
冒泡排序有多种不同的写法,其中主要的区别就是性能的不同这篇文章将逐步改进冒泡排序,使得冒泡排序不断进化原始人先看代码 public void getSortArray(int array[]) { int temp = 0; for (int i = 0; i < array.length - 1; i++) { for (int j = 0; j < ar...原创 2019-08-01 09:47:19 · 201 阅读 · 0 评论 -
算法--排序--鸡尾酒排序--JAVA
这篇文章讲的是 :鸡尾酒排序鸡尾酒排序是冒泡排序的再升级版,冒泡排序可以参考我的博客:https://blog.csdn.net/kai123wen/article/details/98031335冒泡排序最终本来也很好了,但是既然是“冒泡”,就说明每次排序的方向是单向的,单向就会带来一个问题:如数列 2 3 4 5 1,1 是最小的,但是1在最后,如果我们的冒泡的方向是从左向右,那么要比较的...原创 2019-08-02 09:06:59 · 211 阅读 · 0 评论 -
算法--排序--插入排序&&选择排序--JAVA
排序的分类(内部排序):插入排序、选择排序、交换排序、归并排序、基数排序这一篇先介绍前两种简单的 插入排序、 选择排序插入排序:当插入第 i 个元素时,之前的元素 array[0] array[1] … array[i-2] 均已经排序完毕,只需要将array[i] 与 array[0] array[1] … array[i-2] 中元素比较,找到第一个大于array[i] 的位置,然后将其...原创 2019-08-02 12:48:44 · 117 阅读 · 0 评论