资源简介
数据结构例程。。。
按照陈越姥姥的笔记写的。。。

代码片段和文件信息
#include
#include
#include
#include
#define init_size 20
#define increment 20
typedef char ElemType;
typedef struct sqStack
{
ElemType *top;
ElemType *base;
int stack_size;
};
void init_stack( sqStack *s)
{
s->base = ( ElemType*)malloc(init_size * sizeof( ElemType ) );
if ( !s->base )
exit(0);
s->top = s->base;
s->stack_size = init_size;
}
void push( sqStack *s ElemType e)
{
if ( s->top - s->base >= s->stack_size ){
s->base = (ElemType *)realloc( s->base (s->stack_size + increment) * sizeof( ElemType) );
if ( !s->base)
exit(0);
}
*(s->top) = e;
s->top++;
}
void pop( sqStack *s ElemType *e)
{
if ( s->top == s->base)
return ;
s->top --;
*e = *(s->top);
}
int stacklen( sqStack *s)
{
return s->top - s->base;
}
int main(void)
{
sqStack s;
init_stack(&s);
char str[100];
ElemType temp;
int i = 0;
char e;
scanf(“%c“ &e);
while ( e != ‘\n‘)
{
while ( isdigit(e)) //分离数字
{
printf(“%c“ e);
scanf(“%c“ &e);
}
printf(“ “);
if ( ‘*‘==e || ‘/‘==e || ‘(‘==e) // * / 直接入栈
{
push( &s e);
}
else if ( ‘)‘== e ) // 反括号一直弹栈直至正括号
{
do
{
pop( &s &temp);
printf(“%c “ temp);
}while ( ‘(‘ != temp);
}
else if ( ‘+‘==e || ‘-‘==e) //加减号
{
if ( !stacklen(&s) ) // 如果空栈, 直接入栈
{
push( &s e);
}
else
{
do
{
pop(&s &e);
if ( ‘(‘ == e)
push(&se);
else
printf(“%c “ e);
}while( stacklen(&s) && ‘(‘ != e);
push( &s e);
}
}
else if ( e != ‘\n‘)
{
printf(“error!\n“);
return -1;
}
if ( e != ‘\n‘)
scanf(“%c“ &e);
}
while( stacklen(&s))
{
pop(&s &e);
printf(“%c “ e);
}
printf(“\n“);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1047 2015-10-18 16:12 堆栈的链表实现.cpp
文件 969 2015-10-18 16:10 堆栈的数组实现.cpp
文件 1401 2015-10-18 16:25 队列的链表实现.cpp
文件 1072 2015-10-18 16:17 队列的数组实现.cpp
文件 1627 2015-10-18 21:14 二叉树的遍历.cpp
文件 2449 2015-10-18 20:30 平衡二叉树.cpp
文件 1685 2015-10-18 18:45 搜索二叉树.cpp
文件 1894 2015-10-18 21:19 中缀表达式转换为逆波兰表达式.cpp
----------- --------- ---------- ----- ----
12144 8
- 上一篇:编译原理龙书第二版
- 下一篇:南海诸岛及九段线shp
相关资源
- stm32f407上的两个can发送和接收例程
- STM32 2.4G通信例程
- 直流无刷电机方波驱动 stm32 例程代码
- PCIe速度测试例程
- STM32f103超声波模块例程
- 嵌入式图形界面MiniGUI的示例程序9例
- 数据结构年终考题范围和答案 耿国华
- 数据结构 朱战力 习题解答 数据结构
- 数据结构课程设计 6 1 彩票系统
- 教学计划编制系统
- CCP标定例程
- 大数(链表、数组)实现
- stm32官方例程
- 自己写的航空订票系统c 版--数据结构
- 数据结构实验魔王语言
- [易语言]游戏多开例程
- 航空订票系统_数据结构课程设计
- 多项式求和(数据结构C 版)
- 尚观培训linux董亮老师关于数据结构的
- 数据结构 知识点总结
- 华南理工大学数据结构复习提纲二
- 华南理工大学数据结构复习提纲一
- 数据结构用C 写的停车场系统源代码
- Siemens PLC编程精品例程11.机械手GRAPH
- 数据结构(河北科技大学)
- 数据结构考前习题 清华大学出版社
- 数据结构课件(北邮)
- 数据结构实验 基于栈的表达式求值
- 数据结构课程设计——图书管理系统
- VHDL语言编写的100实用的例程
评论
共有 条评论