- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个带括号的字符串 (char *ch),我必须:
1) 验证字符串是否写得正确且平衡,例如:“(())”写得正确且平衡良好,而“)()”既不正确也不平衡
2) 如果字符串写得不好,不平衡,则返回第一个偏离此规则的括号的位置。
第一个问题,没问题。我的代码如下:
int WBalanced(char *ch)
{
stack p; int i;
for (i=0; i<strlen(ch);i++)
{
if(ch[i] == '(')
{
addStack(P, ch[i]);
else if(ch[i] == ')')
{
if(stackEmpty(P) == 0)
unstack(P);
else
return (0);
}
}
}
if(stackEmpty(P)==1)
return (0);
else
return (1);
}
但是对于第二个问题,我不是很理解这个问题。如果我的字符串是“(()”,那么这个位置是第二个括号的位置吗?如果我的字符串是“(()(”,那么偏括号的位置是什么?
谢谢你的帮助
最佳答案
毫无疑问,有很多方法可以解决这个问题,但如果没有额外的要求,我会计算从左到右扫描的嵌套级别。如果计数小于零,请指出该符号是原因。
如果字符串结束并且级别不为零,则指向那个地方(可能)作为不完整的表达式。
关于c - 平衡且正确书写的表达,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55446635/
我正在开发 GPA 计算器,而且我是 C 语言新手。我在 Ubuntu 12 中使用 gvim 编写此代码,并在终端中使用 gcc 进行编译。 这是我到目前为止的代码。我还想包含一种检查方法,以确保用
我正在使用tinymce 编辑网络应用程序中的某些字段。我需要一个带有一些规范的 html 结果(编辑后)。 例如:当我按 Entertinymce 时,创建一个新段落(没关系,我知道可以更改此行为,
我正在尝试在EmguCV(OpenCV C#包装器)图像上绘制多于一行的字符串。但它表明EmguCV无法识别新行“\ r \ n”字符。 如何实现呢?另外,如何获取文本高度,以便可以手动设置下一个字符
我有一个 richTextBox,一个人将在其中阅读患者的医疗记录。 我添加了一个按钮,用于将今天的日期(以 DD/MM/YYYY 格式)添加到 richTextBox 中。当有人需要更新病人的记录时
我是一名优秀的程序员,十分优秀!