算法专题
文章平均质量分 53
欣欣向荣q77
这个作者很懒,什么都没留下…
展开
-
动态规划之爬楼梯和最小花费爬楼梯
动态规划 动态规划算法通常基于一个递推公式及一个或多个初始状态。 当前子问题的解将由上一次子问题的解推出。使用动态规划来解题只需要多项式时间复杂度, 因此它比回溯法、暴力法等要快许多。 首先,我们要找到某个状态的最优解,然后在它的帮助下,找到下一个状态的最优解。 1.爬楼梯 题目: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。 1 阶 + 1 阶 2原创 2022-04-21 23:43:19 · 139 阅读 · 0 评论 -
栈的思想之有效的括号
有效的括号 题目: 给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 (此题出自力扣第20题) 思路分析 有效括号字符串的长度,一定是偶数! 右括号前面,必须是相对应的左括号,才能抵消! 右括号前面,不是对应的左括号,那么该字符串,一定不是有效的括号! 代码: var isValid = function(s) { const stack = [];//用来存原创 2022-04-21 23:17:53 · 106 阅读 · 0 评论