Java栈的应用之括号匹配算法实例分析
本文实例讲述了Java栈的应用之括号匹配算法。分享给大家供大家参考,具体如下:
1、LeetCode官网
- 美网:https://leetcode.com/
- 中文网 :https://leetcode-cn.com/
英语不咋地,所以选择此处选择中文网来进行测试。
2、LeetCode中获取第20号题目
(1)搜索20号题目
(2)查看题目
(3)根据题目要求,首先在本地编辑器中完善20号题目的代码--使用java提供的Stack类,代码如下:
class Solution { public boolean isValid(String s) { Stack<Character> stack=new Stack<Character>(); for (int i=0;i<s.length();i++){ char c=s.charAt(i); if(c=='('||c=='['||c=='{'){ stack.push(c); }else { if(stack.isEmpty()) return false; char topChar=stack.pop(); if(c==')'&&topChar!='(') return false; if (c==']'&&topChar!='[') return false; if(c=='}'&&topChar!='{') return false; } } return stack.isEmpty(); } }
(4)将代码提交到LeetCode代码验证是否通过
这样就完成了括号匹配的相关要求,而且是通过Leetcode来完成的,我感觉太酷了~
下一节我们将继续学习一个关于Leetcode的知识。
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
相关文章
详解Spring中@Component和@Configuration的区别
一直有同学搞不清Spring中@Component和@Configuration这两个注解有什么区别,所以这篇文章小编就给大家简单介绍一下@Component和@Configuration的区别,需要的朋友可以参考下2023-07-07springboot 中 druid+jpa+MYSQL数据库配置过程
这篇文章主要介绍了springboot 中 druid+jpa+MYSQL数据库配置,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-08-08SpringMVC @GetMapping注解路径冲突问题解决
MD5对密码进行加密存储是常见的一种加密方式,本文主要介绍了Java双重MD5加密实现安全登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-07-07idea2019版Plugins中搜索不到任何插件的问题解决
本文主要介绍了idea2019版Plugins中搜索不到任何插件的问题解决,插件搜不出来的主要原因是plugins.jetbrains.com ping不通,下面就来介绍一下解决方法,感兴趣的可以了解一下2023-09-09
最新评论