圆括号匹配c语言代码,求救!!一道关于表达式圆括号匹配的经典题目
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
struct Listack{
char data;
struct Listack*next;};bool GetTop(Listack*&s,char e)
{
if(s->next==NULL){printf("incorrect"); return false;
}
if(e==s->next->data)
return true;
}
void Push(Listack* &s,char e)
{
Listack*p;
p=(Listack*)malloc(sizeof(Listack));
p->data=e;
p->next=s->next;
s->next=p;
}
bool StackEmpty(Listack*s)
{
return(s->next==NULL);
}
bool Pop(Listack*&s,char e)
{
Listack * p;
if(s->next==NULL)
{printf("incorrect"); return false;
}
p=s->next;
e=p->data;
s->next=p->next;
free(p);
return true;
}
void Match(char exp[])
{
Listack* st;
st=(Listack*)malloc(sizeof(Listack));
st->next=NULL;
char ch='(';int i;
for(i=0;exp[i]=='('||')';i++)
{if(exp[i]=='(')
Push(st,exp[i]);
else if(exp[i]==')')
{
if(GetTop(st,ch))
Pop(st,ch);
}
}
if(!StackEmpty(st))
printf("incorrect");
else printf("correct");
}int main()
{
char str[100];
printf("please input:");
gets(str);
Match(str);
}
圆括号匹配c语言代码,求救!!一道关于表达式圆括号匹配的经典题目相关推荐
- 贪心算法黑白点匹配C语言,贪心算法之——黑白点的匹配(两种实现方法)
一.题目 设平面上分布着n个白点和n个黑点,每个点用一对坐标(x, y)表示.一个黑点b=(xb,yb)支配一个白点w=(xw, yw)当且仅当xb>=xw和yb>=yw. 若黑点b支配白 ...
- c语言求婚代码大全,继“代码求救”后,程序员用40行代码求婚成功!
原标题:继"代码求救"后,程序员用40行代码求婚成功! 前段时间,程序员又火了一把. 一名程序员掉入传销组织用代码向同事求救,同事秒懂,程序员被成功救出.大家都为程序员的机智点赞, ...
- 字符串匹配的KMP算法和C语言代码,不需要思考就能理解
KMP算法用于判断一个字符串是否包含另一个字符串,如果包含就返回脚标.其实KMP算法本身特别简单,我看了几篇本章都号称简单易懂,结果看得我云里雾里,直到我看到了阮一峰:字符串匹配的KMP算法,才真正看 ...
- 匈牙利算法c语言代码,漫谈匈牙利算法
匈牙利算法是由匈牙利数学家Edmonds于1965年提出,因而得名.匈牙利算法是基于Hall定理中充分性证明的思想,它是部图匹配最常见的算法,该算法的核心就是寻找增广路径,它是一种用增广路径求二分图最 ...
- heap c语言数组实现,垃圾回收算法实现之 - 分代回收(完整可运行C语言代码)...
分代垃圾回收(Mark-Sweep GC),并不是一个具体的算法,只是结合了几种垃圾回收算法,把对象按特点进行了分类,对每种特点的对象集执行不同的回收算法,从而提升回收效率 阅读本文之前,你最好已经了 ...
- 字符串括号匹配c语言,数据结构C语言括号的检验源程序 , 数据结构(C) 请用类C语言实现括号匹配的检验这个算法...
问题标题 数据结构C语言括号的检验源程序 , 数据结构(C) 请用类C语言实现括号匹配的检验这个算法 2019-8-21来自ip:13.149.196.77的网友咨询 浏览量:270 手机版 问题补充 ...
- python正则表达式匹配c语言的函数
背景 当前在工程中有已经实现好了的很多c函数,由于某些原因,需要在所有c函数中临时加些一样的语句,这些语句最后会删除 解决方案1 参考: https://codeantenna.com/a/Rh6TZ ...
- 十进制小数转十六进制(浮点型转16进制)C语言代码+2种方法
十六进制简介 十六进制(简写为hex或下标16),在数学中是一种逢16进1的进位制.通常用0-9,a-f(或A-F)表示16个基数,即0.1.2.3.4.5.6.7.8.9.A.B.C.D.E.F表示 ...
- R语言str_extract函数从字符串中抽取匹配模式的字符串
R语言str_extract函数从字符串中抽取匹配模式的字符串 目录 R语言str_extract函数从字符串中抽取匹配模式的字符串 #导入包和库
最新文章
- 重大改变!Python 或将取代 VBA 成为 Excel 官方脚本语言
- 为什么 HashMap 加载因子一定是0.75?而不是0.8,0.6?
- QT 之 TCP/IP 服务器和客户端(一)
- Python2.x还是3.x?
- 王超:奇虎360 MongoDB
- websocketpp 最简单的客户端 一
- 【Spring】Spring Boot 和 Redis 自定义 RedisTemplate
- kafka session.timeout.ms 是指消费一条数据的时间?_阿里工程师分享:浅谈分布式发布订阅消息系统Kafka...
- 公司支付给临时工的劳务费,无法取得发票如何做账?
- 微信支付id出现的重复支付解决方法和app应用中多种支付方式之间的对比
- sql注入攻击与防御第二章
- h5页面如何切图_HTML5自助切图
- 成神之路——实施工程师
- java 的qq 语音文件怎么打开,用手机java的QQ可以和电脑上的QQ进行语音通话吗?
- html的3d旋转木马插件,js 3D旋转木马特效插件
- MySQL:复合查询和内外连接
- 初学python:输入某年某月某日,判断这一天是这一年的第几天
- matlab的颜色映射colormap
- Hadoop1.0单点安装-Windows
- Java Swing窗体JFrame之设置窗体图标