- 博客(5)
- 收藏
- 关注
原创 Leetcode之 扰乱字符串
题目描述题目思路递归,首先判断两个字符串长度是否相等,若相等则记录字符串中字母出现次数是否相等,最后分两种情况判断:Case 1: S1左右两部分未交换,则分别判断S1和S2的前后两部分是否为扰动所得;Case 2: S1左右部分发生交换,则判断S1的前半部分和S2的后半部分是否为扰动所得,S1的后半部分和S2的前半部分是否为扰动所得动态规划代码方法一:class Solut...
2020-04-08 20:49:52 122
原创 Leetcode之 柱状图中最大的矩形
题目描述给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。思路暴力遍历,果然超时了分治法:代码方法一:class Solution {public: int largestRectangleArea(vector<int>& heights) { i...
2020-04-07 20:51:25 97
原创 Leetcode动态规划之 最大矩形
题目描述给定一个仅包含 0 和 1 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。思路动态规划:定义dp[i][j]表示以第i+1行第j+1字符结尾的只包含1的最大长度。若matrix[i][j]是0,则对应的dp为0,否则dp[i][j] = dp[i][j-1]+1。至此则再向上回溯,找到以第i+1行第j+1字符结尾的只包含1的最大矩形面积代码方法一:class ...
2020-04-07 04:25:42 408
原创 leetcode之 编辑距离
题目描述给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数 。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符思路动态规划,用dp[i][j]表示使得word1中第1-i位和word2中第1-j位相同的最少操作数,若word1[i-1] == word2[j-1],则dp[i-1][j-1] = dp[i][j...
2020-04-02 05:06:36 104
原创 Leetcode之生命游戏
题目描述给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位置活细胞死亡;如果活细胞周围八个位置有两个或三个活细胞,则该位置活细胞仍然存活;如果活细胞周围八个位...
2020-04-02 04:30:54 71
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人