作者gmobug (泡泡虫虫)
看板Programming
标题Re: 用C++ 检查大括号左右对称
时间Sun Jul 30 10:44:41 2006
※ 引述《[email protected] (无)》之铭言:
: 请问 如何用C++写一个执行速度快 效率高
: 的检查大括号的程式?
: 谢谢.
bool lala(char *str)
{
int i,n=0;
for(i=0;i<strlen(str);i++){
if(str[i]=='{'){
n++;
}else if(str[i]=='}'){
n--;
}
if(n<0){
return FALSE;
}
}
if(n>0){
return FALSE;
}else{
return TRUE;
}
}
以上不知道有没有bug
喔对了...
请自行改成C++的写法喔
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.62.42.61
※ 编辑: gmobug 来自: 61.62.42.61 (07/30 10:46)
※ 编辑: gmobug 来自: 61.62.42.61 (07/30 10:47)
※ 编辑: gmobug 来自: 61.62.42.61 (07/30 10:52)
※ 编辑: gmobug 来自: 61.62.42.61 (07/30 10:57)
1F:推 shane123:可是如果程式中有.. char *str="{hi"; 61.62.97.25 07/30 11:03
2F:推 gmobug:这样..不就不对称了吗??还是我看错问题... 61.62.42.61 07/30 11:07
3F:→ gmobug:喔我大概懂你的意思 61.62.42.61 07/30 11:09
4F:→ gmobug:如果他是要解析算式,用我的写法没问题 61.62.42.61 07/30 11:09
5F:→ gmobug:如果是要解析程式码,就不行了 61.62.42.61 07/30 11:09
6F:→ gmobug:我写这段原本是用来解析算式的 61.62.42.61 07/30 11:10
7F:→ gmobug:要解析程式码还要再加上',",\的处理 61.62.42.61 07/30 11:10
8F:→ gmobug:那个在编译器设计相关书里面应该会讲吧(?) 61.62.42.61 07/30 11:11
9F:推 gmobug:可能还要注意 注解 和 前置 61.62.42.61 07/30 11:16
10F:推 PRAM:它题目不清不楚 谁知道要检查什麽东西的括号 61.216.182.65 07/30 11:26
11F:→ PRAM:没有必要为它浪费时间去帮它想答案 61.216.182.65 07/30 11:27
12F:→ shane123:嗯恩~~ 61.62.97.25 07/30 15:44
13F:推 walking:难怪,以前经验是: 61.64.88.160 07/31 00:27