链式栈简单实现序列反转
来源:互联网 发布:百度ico制作软件 编辑:程序博客网 时间:2024/05/23 11:47
stack.h
#ifndef STACK_H#define STACK_H 1typedef int INT32;typedef unsigned int UINT32;typedef unsigned char UCHAR8;typedef char CHAR8;typedef long long int LONG64;typedef unsigned long long int ULONG64;typedef double DOUBLE64;typedef float FLOAT32;typedef struct Stack{CHAR8 data;struct Stack *next;}Stack;typedef struct LinkStack //指向栈顶结点{Stack *top;}*Pstack;Pstack Create();void Pop(Pstack s);void Push(Pstack s,CHAR8 data);CHAR8 Top(Pstack s);INT32 Empty(Pstack s);INT32 Full(Pstack s);#endif
stack.c
#include<stdio.h>#include<stdlib.h>#include"stack.h"Pstack Create(){Pstack head = (Pstack)malloc(sizeof(struct LinkStack));if(head != NULL)head->top = NULL;else{printf("out of place\n");return NULL;}return head;}INT32 Empty(Pstack s){if(s->top == NULL)return 1;elsereturn 0;}void Pop(Pstack s){struct Stack *temp;if(Empty(s) == 0){temp = s->top;s->top = s->top->next;free(temp);}else{printf("栈为空\n");return ;}}CHAR8 Top(Pstack s){if(Empty(s) == 0)return s->top->data;elseexit(0);}void Push(Pstack s,CHAR8 data){Stack *p = (Stack *)malloc(sizeof(Stack));p->next = s->top;p->data = data;s->top = p;}
main.c
#include<stdio.h>#include<stdlib.h>#include"stack.h"int main(){CHAR8 ch;Pstack s = Create();printf("输入需要反转序列:\n");while(scanf("%c",&ch) != EOF){Push(s,ch);}while(Empty(s) != 1){printf("%c ",Top(s));Pop(s);}printf("\n");return 0;}
- 链式栈简单实现序列反转
- 链式栈基本功能的简单实现
- 链式队列简单实现
- 字符串反转简单实现
- 链式队列的简单实现
- C++链式栈的简单实现(只有基本功能)
- 栈的链式存储结构及简单实现
- 双链表、链式栈、链式队列 及实现
- 双链表、链式栈、链式队列 及实现
- 栈的链式实现
- 链式栈的实现
- 栈---链式存储实现
- 栈的链式实现
- Javascript实现链式栈
- C实现链式栈
- 链式栈的实现
- 链式栈 java实现
- Java实现链式栈
- python 的日志logging模块学习
- “4K标准”出台,TCL缘何引领行业发展?
- Windows 錯誤代碼意義
- oracle维护表空间和数据文件
- 各种常用代码收集
- 链式栈简单实现序列反转
- abap字符,16进制,十进制,整形互转换
- jqgrid详细参数文档
- linux编程下signal()函数
- 【Windows7系统杂音爆音问题解决】
- 最新Wordpress 3.5版本如何修改图片默认上传目录路径
- IE和FF下查看HTTP 头文件信息的插件
- 错误对照表
- 面向海量服务的设计原则和策略总结