From e933c1fa58ed121b9cdb6b410a421e7a1c77e063 Mon Sep 17 00:00:00 2001 From: algorithmzuo Date: Wed, 11 Jan 2023 14:03:07 +0800 Subject: [PATCH] modify code --- 公开课/class118/Code01_ExpressionCompute.java | 13 ++++++++++++- .../class118/Code03_RegularExpressionMatch.java | 6 +++++- .../大厂算法和数据结构刷题班 | 3 ++- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/公开课/class118/Code01_ExpressionCompute.java b/公开课/class118/Code01_ExpressionCompute.java index 6d15f00..015c7ff 100644 --- a/公开课/class118/Code01_ExpressionCompute.java +++ b/公开课/class118/Code01_ExpressionCompute.java @@ -2,7 +2,18 @@ package class118; import java.util.LinkedList; -// 本题测试链接 : https://leetcode.com/problems/basic-calculator-iii/ +// 给定一个字符串表达式str,str表示一个公式, +// 公式里可能有整数、加减乘除符号和左右括号 +// 返回公式的计算结果 +// 难点在于括号可能嵌套很多层, +// str="48*((70-65)-43)+8*1",返回-1816 +// str="3+1*4",返回7。str="3+(1*4)",返回7。 +// 1,可以认为给定的字符串一定是正确的公式,即不需要对str做公式有效性检查 +// 2,如果是负数,就需要用括号括起来, +// 比如"4*(-3)"但如果负数作为公式的开头或括号部分的开头则可以没有括号, +// 比如"-3*4"和"(-3*4)"都是合法的 +// 3,不用考虑计算过程中会发生溢出的情况。 +// 测试链接 : https://leetcode.cn/problems/basic-calculator-iii/ public class Code01_ExpressionCompute { public static int calculate(String str) { diff --git a/公开课/class118/Code03_RegularExpressionMatch.java b/公开课/class118/Code03_RegularExpressionMatch.java index 864f59a..97ae0bf 100644 --- a/公开课/class118/Code03_RegularExpressionMatch.java +++ b/公开课/class118/Code03_RegularExpressionMatch.java @@ -1,6 +1,10 @@ package class118; -// 测试链接 : https://leetcode.com/problems/regular-expression-matching/ +// 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配 +// '.' 匹配任意单个字符 +// '*' 匹配零个或多个前面的那一个元素 +// 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串 +// 测试链接 : https://leetcode.cn/problems/regular-expression-matching/ public class Code03_RegularExpressionMatch { // 暴力递归方法 diff --git a/算法课堂笔记/课堂内容汇总/大厂算法和数据结构刷题班 b/算法课堂笔记/课堂内容汇总/大厂算法和数据结构刷题班 index d57fc70..4e53141 100644 --- a/算法课堂笔记/课堂内容汇总/大厂算法和数据结构刷题班 +++ b/算法课堂笔记/课堂内容汇总/大厂算法和数据结构刷题班 @@ -169,11 +169,12 @@ Parts和records的长度一样长,str一定要分割成k个部分,分割出 08 大厂高频算法和数据结构面试题8 -给定一个字符串str,str表示一个公式,公式里可能有整数、加减乘除符号和左右括号。返回公式的计算结果 +给定一个字符串表达式str,str表示一个公式,公式里可能有整数、加减乘除符号和左右括号。返回公式的计算结果 难点在于括号可能嵌套很多层,str="48*((70-65)-43)+8*1",返回-1816。str="3+1*4",返回7。str="3+(1*4)",返回7。 1,可以认为给定的字符串一定是正确的公式,即不需要对str做公式有效性检查 2,如果是负数,就需要用括号括起来,比如"4*(-3)"但如果负数作为公式的开头或括号部分的开头,则可以没有括号,比如"-3*4"和"(-3*4)"都是合法的 3,不用考虑计算过程中会发生溢出的情况。 +测试链接 : https://leetcode.cn/problems/basic-calculator-iii/ 给定n个非负整数a1,a2,...an,每个数代表坐标中的一个点 (i, ai)。在坐标内画n条垂直线 垂直线i的两个端点分别为(i, ai)和(i, 0),找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水