- 博客(6)
- 收藏
- 关注
原创 深度优先搜索(DFS)-算法入门
深度优先搜索(DFS)-算法入门DFS的主要六步①递归树②找结束条件(画出树后,结束条件比较好判断)③找选择列表(看递归树)④判断是否需要剪枝⑤做出选择,递归调用,继续下一层递归⑥撤销选择(回溯)子集题目描述:给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。输入:nums = [1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]
2022-02-28 22:09:34
915
原创 递归-算法入门
递归-算法入门递归-概述递归这一个词可以拆开来看,递:递推,归:回归(回溯),而且递归的方式往往与树紧密结合着,树是一种从现实中抽象而来的数据结构,递归又是解决树的一种重要方法,例如最基本的树的三大遍历方式,递归的方式也两种,自顶向下和从底而上。通过leetcode上的一些例题来深入了解一下递归解决问题的方式。递推与回溯路径总和题目描述:给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 t
2022-02-13 22:50:17
546
1
原创 广度优先搜索-算法入门
广度优先搜索(BFS)-算法入门广度优先搜索概述广度优先搜索本质上,其实是一种迭代的思想,通过源点扩散地去搜索其他的点,搜到的点用队列来维护,再用这些点继续扩散,从而达到遍历全局;形象来说的话,可以想象成新冠疫情的扩散一样,先从一个城市爆发,如果不加以管制,它便扩散到它临近的城市,再以临近的城市为据点,继续扩散。
2022-02-08 20:18:13
1352
原创 滑动窗口(字符串)-算法入门
滑动窗口(字符串)-算法入门滑动窗口概述滑动窗口,大致就是维护一个区间去遍历一段数据,类似于双指针算法,那么用区间去遍历有什么好处吗?用一个区间去遍历的话,区间内会有原来的计算结果,避免重复计算,从而降低达到降低时间复杂度的目的。在算法题中常常用于找到满足某条件下,字符串或数组的字串或子数组的问题中。下面用两个例题来简单介绍一下,滑动窗口具体是如何运行的。字符串的排列**题目描述:**给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true ;否则,返
2022-02-06 21:32:27
641
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人