织梦CMS - 轻松建站从此开始!

罗索

最简单的顺序栈的实现

落鹤生 发布于 2011-10-17 08:55 点击:次 
最简单的顺序栈的实现代码.
TAG:

#define TRUE 1
#define FALSE 0
#define STACK_SIZE 100

typedef char ElementType;
typedef struct
{
    ElementType data[STACK_SIZE];
    int top;
}SeqStack;

void InitStack(SeqStack *s)
{
    s->top = -1;
}

int IsEmpty(SeqStack *s)
{
    if(s->top == -1)
        return TRUE;
    return FALSE;
}

int IsFull(SeqStack *s)
{
    if(s->top == STACK_SIZE - 1)
        return TRUE;
    return FALSE;
}

int Push(SeqStack *s, ElementType element)
{
    if(IsFull(s))
        return FALSE;
    s->top ++;
    s->data[s->top] = element;
    return TRUE;
}

int Pop(SeqStack *s, ElementType *element)
{
    if(IsEmpty(s))
        return FALSE;
    *element = s->data[s->top];
    s->top --;
    return TRUE;
}

int GetTop(SeqStack *s,ElementType *element)
{
    if(IsEmpty(s))
        return FALSE;
    *element = s->data[s->top];
    return TRUE;
}

(zorru)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201110/15142.html]
本文出处:hi.baidu.com/zorru 作者:zorru
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容