算法
Java小渣仔
这个作者很懒,什么都没留下…
展开
-
数组算法题型小结
1.使用二分法解题,题目一般包含有序数组等条件,解题重点是左右边界一定要定义好1.1普通二分法查找数据,分清左右区间就行1.2二分法找重复元素范围,这个需要分左右区间,1.3找数组中两个元素和等于指定数据。(1)先排序Arrays.sort(),(2)双指针查找2.快慢指针问题:由于数组的元素地址是连续的,不能删除数据,只能覆盖, 所以涉及到删除元素时,使用快慢指针用快指针元素覆盖慢指针元素3.双指针法:从数组两端向中间查找找到指定元素4.滑动窗口法:当问题中涉及到找满足条件的子数组,就要考虑滑原创 2021-08-10 00:36:44 · 338 阅读 · 0 评论 -
剑指offer 深度优先遍历(DFS)和广度优先遍历(BFS) 题解一
深度优先遍历(Depth First Search, 简称 DFS) 与广度优先遍历(Breath First Search)是图论中两种非常重要的算法,生产上广泛用于拓扑排序,寻路(走迷宫),搜索引擎,爬虫等,算面试高频考点常见的 DFS : 先序遍历、中序遍历、后序遍历;常见的 BFS : 层序遍历(即按层遍历)。1.剑指 Offer 27. 二叉树的镜像请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入: 4 / \ 2 7 / \ / \原创 2021-07-31 23:12:22 · 527 阅读 · 0 评论