Skip to content

Latest commit

 

History

History
121 lines (82 loc) · 3.47 KB

07.04.02-Exercises.md

File metadata and controls

121 lines (82 loc) · 3.47 KB

07.04.02 练习题目(第 14 天)

1.1 题目大意

描述:给定两个字符串 text1text2

要求:返回两个字符串的最长公共子序列的长度。如果不存在公共子序列,则返回 0

说明

  • 子序列:原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。
  • 公共子序列:两个字符串所共同拥有的子序列。
  • $1 \le text1.length, text2.length \le 1000$
  • text1text2 仅由小写英文字符组成。

示例

  • 示例 1:
输入text1 = "abcde", text2 = "ace" 
输出3  
解释最长公共子序列是 "ace"它的长度为 3
  • 示例 2:
输入text1 = "abc", text2 = "abc"
输出3
解释最长公共子序列是 "abc"它的长度为 3

2.1 题目大意

描述:给定一个包含非负整数的 $m \times n$ 大小的网格 grid

要求:找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。

说明

  • 每次只能向下或者向右移动一步。
  • $m == grid.length$
  • $n == grid[i].length$
  • $1 \le m, n \le 200$
  • $0 \le grid[i][j] \le 100$

示例

  • 示例 1:

输入grid = [[1,3,1],[1,5,1],[4,2,1]]
输出7
解释因为路径 13111 的总和最小
  • 示例 2:
输入grid = [[1,2,3],[4,5,6]]
输出12

3.1 题目大意

描述:给定两个单词 word1word2

对一个单词可以进行以下三种操作:

  • 插入一个字符
  • 删除一个字符
  • 替换一个字符

要求:计算出将 word1 转换为 word2 所使用的最少操作数。

说明

  • $0 \le word1.length, word2.length \le 500$
  • word1word2 由小写英文字母组成

示例

  • 示例 1:
输入word1 = "horse", word2 = "ros"
输出3
解释horse -> rorse ( 'h' 替换为 'r')
rorse -> rose (删除 'r')
rose -> ros (删除 'e')
  • 示例 2:
输入word1 = "intention", word2 = "execution"
输出5
解释intention -> inention (删除 't')
inention -> enention ( 'i' 替换为 'e')
enention -> exention ( 'n' 替换为 'x')
exention -> exection ( 'n' 替换为 'c')
exection -> execution (插入 'u')

习题解析

  1. 1143. 最长公共子序列」习题解析:网页链接Github 链接
  2. 0064. 最小路径和」习题解析:网页链接Github 链接
  3. 0072. 编辑距离」习题解析:网页链接Github 链接