LeetCode实战:有效的括号



题目英文

Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

An input string is valid if:

Open brackets must be closed by the same type of brackets.Open brackets must be closed in the correct order.

Note that an empty string is also considered valid.

Example 1:

Input: "()" Output: true

Example 2:

Input: "()[]{}" Output: true

Example 3:

Input: "(]" Output: false

Example 4:

Input: "([)]" Output: false

Example 5:

Input: "{[]}" Output: true

题目中文

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。

示例 1:

输入: "()" 输出: true

示例 2:

输入: "()[]{}" 输出: true

示例 3:

输入: "(]" 输出: false

示例 4:

输入: "([)]" 输出: false

示例 5:

输入: "{[]}" 输出: true

示例 6:

输入: "" 输出: true

算法实现

public class Solution { public bool IsValid(string s) { if (string.IsNullOrEmpty(s)) return true; Stack stack = new Stack(); for (int i = 0; i < s.Length; i++) { char c = s[i]; if (stack.Count == 0) { stack.Push(c); } else if (stack.Peek() == GetPair(c)) { stack.Pop(); } else { stack.Push(c); } } return stack.Count == 0; } public static char GetPair(char c){ if (c == ')') return '('; if (c == '}') return '{'; if (c == ']') return '['; return '\0'; } }

实验结果

状态:通过76 / 76 个通过测试用例执行用时:100 ms

提交结果

相关图文

LeetCode实战:两数之和LeetCode实战:三数之和LeetCode实战:缺失的第一个正数LeetCode实战:求众数LeetCode实战:快乐数LeetCode实战:删除链表的倒数第N个节点LeetCode实战:合并两个有序链表LeetCode实战:合并K个排序链表LeetCode实战:两两交换链表中的节点LeetCode实战:旋转链表LeetCode实战:相同的树LeetCode实战:对称二叉树LeetCode实战:二叉树的最大深度LeetCode实战:搜索二维矩阵LeetCode实战:将有序数组转换为二叉搜索树

经过8年多的发展,LSGO软件技术团队在「地理信息系统」、「数据统计分析」、「计算机视觉」等领域积累了丰富的研发经验,也建立了人才培养的完备体系,由于自己准备在「量化交易」领域精进技能,如果大家对这个领域感兴趣可以与我联系,加入我们的量化学习群一起学习探讨。

在这个领域我已做了以下积累:

策略部分:

数字货币 One 的投资价值分析数字资产量化中的跨市场套利策略数字资产量化中的同市场套利策略数字资产量化中的网格交易法我们能否效仿李笑来的投资策略?赚钱是刚需,如何正确的交易股票?

数据部分:

如何利用 C# 爬取 One 的交易数据?如何利用 C# 爬取 One 持有者返利数据?如何利用 C# 爬取BigOne交易所的公告?如何利用 C# 爬取Gate.io交易所的公告?如何利用 C# 爬取「财报说」中的股票数据?

自动化交易部分:

封装BigOne API:身份验证封装BigOne API:获取账户资产封装BigOne API:订单系统封装BigOne API:网格交易法封装BigOne API:代码的重构进一步完善自动化交易系统 01进一步完善自动化交易系统 02进一步完善自动化交易系统 03进一步完善自动化交易系统 04如何开发「股票数据分析软件」(上)如何开发「股票数据分析软件」(中)如何开发「股票数据分析软件」(下)进一步完善「股票数据分析软件」 - 01

后台回复「搜搜搜」,随机获取电子资源!

欢迎关注,请扫描二维码: