![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图解算法
奋斗小菠萝
深入一些,原来更美好
展开
-
【图解算法】-CH2排序算法
目录 冒泡排序 选择排序 插入排序 快速排序 冒泡排序 解题思路 循环比较相邻元素,若前方元素大于后方,将前方元素与后方元素交换,每一次循环比较后,最大元素往后冒泡。 第n次循环比较从0位置比较到第最大数组长度-(n-1)个元素,重复1步骤比较交换。 当循环n-1次,或者一次比较后未交换元素。退出循环,排序结束。 图解示例 代码实现 public void bu...原创 2019-07-13 12:46:30 · 156 阅读 · 0 评论 -
【图解算法】-CH1二叉树层级遍历
算法描述 从上往下,从左往右,层级遍历二叉树 解题思路 初始化head和tail标识在队列前 将节点放入队列,并同时移动tail标识同步往后 head标识每次前进1,读取节点,并将该节点的左右子节点依次放入队列,同时移动tail节点到末尾 直到head标识移动到tail位置 图解示例 代码实现 //节点类 public class TreeNode { private...原创 2019-07-11 08:41:29 · 114 阅读 · 0 评论 -
【图解算法】-CH3查找算法
二分查找 解题思路 假设列表已从小到大排序,并设置low,high点为队列首尾位置。 选取列表中间位置,比较查找目标值与中间位置值大小。 若比目标值大,则说明目标值可能存在中间值前面,将high设置为中间位置前一位置。 若比目标值小,则说明目标值可能存在中间值后面,将low设置成为中间位置后一位置。 若和目标值一样,则找到目标值,退出。 通过最小的low, high设置新的队列,循环...原创 2019-07-21 15:56:37 · 111 阅读 · 0 评论