摘要: 题目描述 给定两个单词word1和word2,请计算将word1转换为word2至少需要多少步操作。你可以对一个单词执行以下3种操作:a)在单词中插入一个字符b)删除单词中的一个字符c)替换单词中的一个字符 解析: D[i][j-1] 为 A 的前 i 个字符和 B 的前 j - 1 个字符编辑距离 阅读全文
posted @ 2020-07-24 21:07 打屎也不熬夜 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 题目描述 你在爬楼梯,需要n步才能爬到楼梯顶部 每次你只能向上爬1步或者2步。有多少种方法可以爬到楼梯顶部? 递归法: 1 import java.util.*; 2 3 4 public class Solution { 5 /** 6 * 7 * @param n int整型 8 * @retu 阅读全文
posted @ 2020-07-24 20:26 打屎也不熬夜 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定一个由非负整数填充的m x n的二维数组,现在要从二维数组的左上角走到右下角,请找出路径上的所有数字之和最小的路径。注意:你每次只能向下或向右移动。 二维数组动态规划求解: 1 import java.util.*; 2 3 4 public class Solution { 5 /* 阅读全文
posted @ 2020-07-24 17:03 打屎也不熬夜 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 继续思考题目"Unique Paths": 如果在图中加入了一些障碍,有多少不同的路径? 分别用0和1代表空区域和障碍 例如 下图表示有一个障碍在3*3的图中央。 [↵ [0,0,0],↵ [0,1,0],↵ [0,0,0]↵] 有2条不同的路径 备注:m和n不超过100. 二维数组动态规划解法: 阅读全文
posted @ 2020-07-24 16:30 打屎也不熬夜 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 题目描述 一个机器人在m×n大小的地图的左上角(起点,下图中的标记“start"的位置)。 机器人每次向下或向右移动。机器人要到达地图的右下角。(终点,下图中的标记“Finish"的位置)。 可以有多少种不同的路径从起点走到终点? 上图是3×7大小的地图,有多少不同的路径? 备注:m和n小于等于10 阅读全文
posted @ 2020-07-24 15:48 打屎也不熬夜 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为O(n)。 示例1: 输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 提示: 1 阅读全文
posted @ 2020-07-24 13:12 打屎也不熬夜 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 给定一棵二叉搜索树,请找出其中第k大的节点。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2输出: 4示例 2: 输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 / 1输 阅读全文
posted @ 2020-07-23 19:13 打屎也不熬夜 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 a,b,c,e; s,f,c,s; a,d,e,e 阅读全文
posted @ 2020-06-27 15:38 打屎也不熬夜 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[1],...,k[m]。请问k[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。 输入描述: 阅读全文
posted @ 2020-06-24 22:53 打屎也不熬夜 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 示例: 输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 0 跳到下标为 1 的位置,跳 1 步 阅读全文
posted @ 2020-05-12 21:47 打屎也不熬夜 阅读(100) 评论(0) 推荐(0) 编辑