算法
Ying_ya
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
动态规划学习一——打家劫舍
动态规划 1.核心思想 将大问题划分为小问题进行解决,从而一步步获得获取最优解。经分解得到的子问题往往不是独立的,即下一个子阶段的求解是建立在上一个子阶段的解的基础上进一步求解的。 2.动态规划解题四步 确定状态 写出状态转移方程 考虑初始化 考虑输出 3.案例分析 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你原创 2020-08-25 22:56:04 · 297 阅读 · 0 评论 -
03字符串的排列组合
题目描述 输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 来源:力扣(LeetCode) 思路 以字符串“abc”为例,如下图: 一开始是空字符串’’,可选择的有三个字符’a’、‘b’,‘c’ a,剩余‘b’、‘c’ ab,剩’c’ ac,剩’b’ b,剩余’a’、‘c’ ba,剩’c’ bc,剩’a’ c,剩余’a’、‘b’ ca,剩’b’ cb,剩’a’ 参考题解 代码 1.字符串 /** * @para原创 2020-08-14 22:44:28 · 239 阅读 · 0 评论 -
02用队列实现栈
使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 来源:力扣(LeetCode) /** * Initialize your data structure here. */ var MyStack = function() { this.stack = []; }; /** * Push element x onto stack. * @param {number} x原创 2020-08-13 16:03:34 · 173 阅读 · 0 评论 -
01用栈实现队列
使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部。 pop() -- 从队列首部移除元素。 peek() -- 返回队列首部的元素。 empty() -- 返回队列是否为空。 来源:力扣(LeetCode) 1.用一个栈实现 /** * Initialize your data structure here. */ var MyQueue = function() { this.stack = []; }; /** * Push element x to the原创 2020-08-13 15:56:08 · 149 阅读 · 0 评论
分享