课程咨询 :0592-5903858 QQ:1079585464

厦门达内java培训

厦门Java培训 > 达内新闻 > java中栈的相关知识
  • java中栈的相关知识

    发布:厦门Java培训      来源:慕课网      时间:2016-03-08


  •     栈是一种只能在一端进行插入或删除操作的线性表。表中允许进行插入、删除操作的一端称为栈顶,另一端称为栈底,主要特点是“后进先出”。

        厦门达内java培训专家简单说一下Java中栈的一些知识点。

    定义一个结构体


    typedef struct{
        ElemType data[Maxsize];
        int top;
    }SqStack;


    初始化栈


    void InitStack(SqStack *&s){
       s=(SqStack *)malloc(sizeof(SqStack));
       s->top=-1;    //指针要指向-1
    }


    销毁


    void ClearStack(SqStack *&s){
        free(s);//用free()释放结果;
    }


    求栈的长度


    int StackLength(SqStack *s){
        return(s->top+1);   //元素个数即为指针+1
    }


    判断栈是否为空


    int StackEmpty(SqStack *&s , ElemType e){
        if( s->top==MaxSize-1)   //栈满~~~溢出
               return 0;
        s->top++;
        s->data[s->top]=e;
        return 1;
    }


    出栈


    int Pop(SqStack *&s,ElemType &e){
        if (s->top==1)
           return 0;
        e=s->data[s->top];
        s->top--;
        return 1;
    }


    取栈顶元素(并非取出删除)


    int GetTop(SqStack *s , ElemType &s){
        if(s->top==-1)
           return 0;
        e=s->data[s->top];
        return 1;
    }




    原文链接:http://www.imooc.com/article/5283

    推荐文章

上一篇:java项目实战之答答租车代码

下一篇:程序员需要掌握的13个开发技能

最新开班日期  |  更多

Java--大数据周末班

Java--大数据周末班

开班日期:每周一

Java--大数据全日制班

Java--大数据全日制班

开班日期:每周一

Java--零基础周末班

Java--零基础周末班

开班日期:每周一

Java--零基础全日制班

Java--零基础全日制班

开班日期:每周一

  • 地址:厦门软件园二期望海路59号之一401达内科技
  • 课程培训电话:0592-5903858 QQ:1079585464     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56