数据结构_链栈的建立与相关操作_C语言源代码
来源:互联网 发布:人工智能行业报告 36 编辑:程序博客网 时间:2024/05/22 04:27
#include<stdio.h>
#include<stdlib.h>
typedef struct Stack
{
int data;
struct Stack *next;
}Stack;
void InitStack(Stack * &S)
{
S=(Stack*)malloc(sizeof(Stack));
S->next=NULL;
}
int StackEmpty(Stack *S)
{
return S->next==NULL ? 1 :0;
}
void Push(Stack *S, int e)
{
Stack *p=(Stack*)malloc(sizeof(Stack));
p->data = e;
p->next = S->next;
S->next = p;
}
int Pop(Stack *S, int &e)
{
Stack *p=NULL;
if(S->next==NULL)
{
return 0;
}
p = S->next;
e = p->data;
S->next = p->next;
free(p);
return 1;
}
int main(void)
{
const int N=10;
int i;
int e;
Stack *S;
InitStack(S);
for(i=0;i<N;++i)
{
Push(S,i);
}
for(i=0;i<N;++i)
{
Pop(S,e);
printf("data[%d]=%d\n",i,e);
}
system("pause");
return 0;
}
#include<stdlib.h>
typedef struct Stack
{
int data;
struct Stack *next;
}Stack;
void InitStack(Stack * &S)
{
S=(Stack*)malloc(sizeof(Stack));
S->next=NULL;
}
int StackEmpty(Stack *S)
{
return S->next==NULL ? 1 :0;
}
void Push(Stack *S, int e)
{
Stack *p=(Stack*)malloc(sizeof(Stack));
p->data = e;
p->next = S->next;
S->next = p;
}
int Pop(Stack *S, int &e)
{
Stack *p=NULL;
if(S->next==NULL)
{
return 0;
}
p = S->next;
e = p->data;
S->next = p->next;
free(p);
return 1;
}
int main(void)
{
const int N=10;
int i;
int e;
Stack *S;
InitStack(S);
for(i=0;i<N;++i)
{
Push(S,i);
}
for(i=0;i<N;++i)
{
Pop(S,e);
printf("data[%d]=%d\n",i,e);
}
system("pause");
return 0;
}
0 0
- 数据结构_链栈的建立与相关操作_C语言源代码
- 数据结构_顺序栈的建立及相关操作_C语言源代码
- 数据结构_循环队列相关操作_C语言源代码
- 数据结构_带有结点的单链表相关操作_C语言源代码
- 数据结构_单链表的插入与删除_C语言源代码
- 数据结构_求二叉树的宽度_C语言源代码
- 数据结构_二叉树的先序建立与先序,中序,后序(递归)遍历方式_C语言源代码
- 数据结构_多项式_C语言源代码
- 数据结构_树_二叉树的建立、遍历、复制与移除_二叉链表存储_C++实现
- 数据结构_顺序表相关操作C语言源代码
- 数据结构_字符串的操作_c/c++
- 数据结构_动态数组形式的顺序表相关操作C语言源代码
- 数据结构_求二叉树的高度以及层次遍历二叉树算法_C语言源代码
- 数据结构_求二叉树的宽度_C语言源代码(待完善)
- 数据结构_双链表的建立及相关操作
- 数据结构_串_串的一些操作_C++实现
- 数据结构_查找二叉树中值为key的节点,并将指针指向该节点_C语言源代码
- 数据结构_队列_用链表动态建立释放节点实现队列各种操作_C++实现
- 黑马程序员_基础_IO流学习笔记_File对象功能
- 深入浅出NodeJS——模块机制
- 7.14-学姐学开车.c++
- Dell Inspiron 14 3437装win7系统没有网卡驱动解决办法
- Excel快捷键小技巧
- 数据结构_链栈的建立与相关操作_C语言源代码
- java 类变量和成员变量初始化过程
- Hadoop学习笔记之初步了解HDFS
- 内存管理
- 听从你的心
- Cocos2d实现的Load。
- 线段树扫描线(覆盖两次以上的面积和)hdu1255
- 0714
- Inbox:一个电子邮件开源平台