Chinaunix首页 | 论坛 | 博客
  • 博客访问: 667671
  • 博文数量: 150
  • 博客积分: 4070
  • 博客等级: 中校
  • 技术积分: 1795
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-23 21:44
文章分类

全部博文(150)

文章存档

2012年(1)

2011年(123)

2010年(26)

分类: IT业界

2011-06-09 15:27:43

1、初始化
bool CreateLinkStack(LinkList **head)
{
 *head = NULL;
 return true;
}
 
2、压栈
bool Push(LinkList **head, ElemType e)
{
 LinkList *tmp;
 tmp = (LinkList *)malloc(sizeof(LinkList));
 if (tmp == NULL)
 {
  return false;
 }
 tmp->data = e;
 tmp->next = *head;
 *head = tmp;
 return true;
}
 
3、弹出栈顶元素
bool Pop(LinkList **head, ElemType *e)
{
 LinkList *tmp;
 tmp = *head;
 if (tmp == NULL)
 {
  return false;
 }
 *e = tmp->data;
 *head = tmp->next;
 free(tmp);
 return true;
}
 
4、删除栈
bool DelStack(LinkList **head)
{
 LinkList *tmp;
 while (*head)
 {
  tmp = (*head)->next;
  free(*head);
  *head = tmp;
 }
 return true;
}
 
5、获取栈顶元素
bool GetTop(LinkList *L, ElemType *e)
{
 if (L == NULL)
 {
  return false;
 }
 *e = L->data;
 return true;
}
阅读(683) | 评论(0) | 转发(0) |
0

上一篇:查找算法

下一篇:heap和stack的区别

给主人留下些什么吧!~~