社区
Java SE
帖子详情
string 匹配
wangdongcheng221
2008-12-02 08:06:41
java语言中 用栈实现一个字符串的匹配问题,如何解决,请教高手:
String str = "[{()}]";这种是匹配的,
String str = "[{()}][";这种是不匹配的,
...全文
231
12
打赏
收藏
string 匹配
java语言中 用栈实现一个字符串的匹配问题,如何解决,请教高手: String str = "[{()}]";这种是匹配的, String str = "[{()}][";这种是不匹配的,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mizukusa
2008-12-03
打赏
举报
回复
二楼说的很详细了,七楼的编码基本上也能实现你要的功能
rypgood
2008-12-03
打赏
举报
回复
我那个回答中打错了一个字,第5行的左改为右就行了。相信lz看得懂
lwlivy
2008-12-03
打赏
举报
回复
楼主想问的应该是检查括号是否匹配,也就是都成对
dongdeng2005
2008-12-03
打赏
举报
回复
初学者,搞了一个多小时才弄出来了.首先楼主给的题目太局限性了.可以这么说,类似[](){} {[()]}这样的字符串也就是匹配的,不管中间有多少空格.下面给出代码:
import java.util.*;
public class Pipei
{
public static void main(String[] args)
{
Stack s=new Stack();
String str1="{}{}[]() {([])}";
char[] ch=str1.toCharArray();
for(int k=0;k<ch.length;k++)
{
if(ch[k]==0)
ch[k]=ch[k+1];
}
int i=0;
for(i=0;i<ch.length;i++)
{
if((ch[i]=='(')||(ch[i]=='[')||(ch[i]=='{'))
{
s.push(ch[i]);
}
else if((ch[i]==')')&&(s.peek()==(Object)'('))
s.pop();
else if((ch[i]==']')&&(s.peek()==(Object)'['))
s.pop();
else if((ch[i]=='}')&&(s.peek()==(Object)'{'))
s.pop();
}
if(s.empty())
System.out.println("匹配!");
else
System.out.println("不匹配!");
}
}
}
myjava_024
2008-12-03
打赏
举报
回复
[Quote=引用 4 楼 whmii 的回复:]
这个可以用栈解决的。2楼给的算法很详细,楼主加油,实现它。
[/Quote]
支持
wangzhehan1986
2008-12-03
打赏
举报
回复
同上
gg13921815036
2008-12-03
打赏
举报
回复
up
fiewfew
2008-12-03
打赏
举报
回复
学习了
鸿悯
2008-12-02
打赏
举报
回复
这个可以用栈解决的。2楼给的算法很详细,楼主加油,实现它。
shenjie1989
2008-12-02
打赏
举报
回复
第二个不对称
rypgood
2008-12-02
打赏
举报
回复
不知道你是不是检查括号匹配问题?如果是:
先把string变成stringbuffer
然后弄个栈
遇到左括号进栈
如果刚开始遇到左括号,返回不匹配,否则:
遇到右括号出栈,并且比较两个括号是否一样,如果不一样则返回不匹配
如果是则继续执行
最后检查栈是否为空,如果为空则返回匹配,否则返回不匹配
xiaolong19870717
2008-12-02
打赏
举报
回复
数据结构好多都有
java
string
匹配
次数_Java实现统计某字符串在另一个字符串中出现的次数
面试时会经常考这样的...谢谢“心扉”对我代码bug的纠正,现已想到更简便的方法,思路就是从被
匹配
字符串a中一个一个往后推,截取b字符串长度的字符串:public class CountHit {public static void main(
String
[] ...
lua
string
模式
匹配
模式
匹配
函数 在
string
库中功能最强大的函数是:
string
.find(字符串查找)
string
.gsub(全局字符串替换)
string
.gfind(全局字符串查找)
string
.gmatch(返回查找到字符串的迭代器)
iptables
匹配
string
string
匹配
帮助信息如下。其中模式
匹配
算法可指定bm(Boyer-Moore)或者kmp(Knuth-Pratt-Morris)。选项icase表示在
匹配
时忽略大小写。 # iptables -m
string
-h
string
match options: --from Offset to start ...
JAVA
String
字符串截取、
匹配
String
字符串截取、
匹配
。
String
字符串
匹配
算法
查找主串(goodgoogle)中是否存在子串(google) 代码: ... public class
String
Test {... public static void main(
String
[] args) {
String
s = "goodgoogle";
String
t = "google"; int isfind = 0; for (in.
Java SE
62,628
社区成员
307,259
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章