🗒️ 678. 有效的括号字符串

给你一个只包含三种字符的字符串,支持的字符类型分别是 '('、')' 和 '*'。请你检验这个字符串是否为有效字符串,如果是 有效 字符串返回 true 。 有效 字符串符合如下规则: • 任何左括号 '(' 必须有相应的右括号 ')'。 • 任何右括号 ')' 必须有相应的左括号 '(' 。 • 左括号 '(' 必须在对应的右括号之前 ')'。 • '*' 可以被视为单个右括号 ')' ,或单个左括号 '(' ,或一个空字符串 ""。

🗒️ 1963. 使字符串平衡的最小交换次数

给你一个字符串 s ,下标从 0 开始 ,且长度为偶数 n 。字符串 恰好 由 n / 2 个开括号 '[' 和 n / 2 个闭括号 ']' 组成。 只有能满足下述所有条件的字符串才能称为 平衡字符串 : • 字符串是一个空字符串,或者 • 字符串可以记作 AB ,其中 A 和 B 都是 平衡字符串 ,或者 • 字符串可以写成 [C] ,其中 C 是一个 平衡字符串 。 你可以交换 任意 两个下标所对应的括号 任意 次数。 返回使 s 变成 平衡字符串 所需要的 最小 交换次数。

🗒️ 1249. 移除无效的括号

给你一个由 '('、')' 和小写字母组成的字符串 s。 你需要从字符串中删除最少数目的 '(' 或者 ')' (可以删除任意位置的括号),使得剩下的「括号字符串」有效。 请返回任意一个合法字符串。 有效「括号字符串」应当符合以下 任意一条 要求: • 空字符串或只包含小写字母的字符串 • 可以被写作 AB(A 连接 B)的字符串,其中 A 和 B 都是有效「括号字符串」 • 可以被写作 (A) 的字符串,其中 A 是一个有效的「括号字符串」

🗒️ 856. 括号的分数

给定一个平衡括号字符串 S,按下述规则计算该字符串的分数: • () 得 1 分。 • AB 得 A + B 分,其中 A 和 B 是平衡括号字符串。 • (A) 得 2 * A 分,其中 A 是平衡括号字符串。

🗒️ 1190. 反转每对括号间的子串

给出一个字符串 s(仅含有小写英文字母和括号)。 请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。 注意,您的结果中 不应 包含任何括号。

🗒️ 1021. 删除最外层的括号

有效括号字符串为空 ""、"(" + A + ")" 或 A + B ,其中 A 和 B 都是有效的括号字符串,+ 代表字符串的连接。 • 例如,"","()","(())()" 和 "(()(()))" 都是有效的括号字符串。 如果有效字符串 s 非空,且不存在将其拆分为 s = A + B 的方法,我们称其为原语(primitive),其中 A 和 B 都是非空有效括号字符串。 给出一个非空有效字符串 s,考虑将其进行原语化分解,使得:s = P_1 + P_2 + ... + P_k,其中 P_i 是有效括号字符串原语。 对 s 进行原语化分解,删除分解中每个原语字符串的最外层括号,返回 s 。

🗒️ 921. 使括号有效的最少添加

只有满足下面几点之一,括号字符串才是有效的: • 它是一个空字符串,或者 • 它可以被写成 AB (A 与 B 连接), 其中 A 和 B 都是有效字符串,或者 • 它可以被写作 (A),其中 A 是有效字符串。 给定一个括号字符串 s ,在每一次操作中,你都可以在字符串的任何位置插入一个括号 • 例如,如果 s = "()))" ,你可以插入一个开始括号为 "(()))" 或结束括号为 "())))" 。 返回 为使结果字符串 s 有效而必须添加的最少括号数。

🗒️ 20. 有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 1. 左括号必须用相同类型的右括号闭合。 2. 左括号必须以正确的顺序闭合。 3. 每个右括号都有一个对应的相同类型的左括号。

🗒️ 735. 小行星碰撞

给定一个整数数组 asteroids,表示在同一行的小行星。数组中小行星的索引表示它们在空间中的相对位置。 对于数组中的每一个元素,其绝对值表示小行星的大小,正负表示小行星的移动方向(正表示向右移动,负表示向左移动)。每一颗小行星以相同的速度移动。 找出碰撞后剩下的所有小行星。碰撞规则:两个小行星相互碰撞,较小的小行星会爆炸。如果两颗小行星大小相同,则两颗小行星都会爆炸。两颗移动方向相同的小行星,永远不会发生碰撞。

🗒️ 2211. 统计道路上的碰撞次数

在一条无限长的公路上有 n 辆汽车正在行驶。汽车按从左到右的顺序按从 0 到 n - 1 编号,每辆车都在一个 独特的 位置。 给你一个下标从 0 开始的字符串 directions ,长度为 n 。directions[i] 可以是 'L'、'R' 或 'S' 分别表示第 i 辆车是向 左 、向 右 或者 停留 在当前位置。每辆车移动时 速度相同 。 碰撞次数可以按下述方式计算: • 当两辆移动方向 相反 的车相撞时,碰撞次数加 2 。 • 当一辆移动的车和一辆静止的车相撞时,碰撞次数加 1 。 碰撞发生后,涉及的车辆将无法继续移动并停留在碰撞位置。除此之外,汽车不能改变它们的状态或移动方向。 返回在这条道路上发生的 碰撞总次数 。

🗒️ 1209. 删除字符串中的所有相邻重复项 II

给你一个字符串 s,「k 倍重复项删除操作」将会从 s 中选择 k 个相邻且相等的字母,并删除它们,使被删去的字符串的左侧和右侧连在一起。 你需要对 s 重复进行无限次这样的删除操作,直到无法继续为止。 在执行完所有删除操作后,返回最终得到的字符串。 本题答案保证唯一。