采用链式存储的栈成为链式栈(或简称链栈), 链栈的优点是便于多个栈共享存储空间和提高其效率, 且不存在栈满上溢的情况(因为链栈是靠指针链接到一起,只要内存够大, 则链栈理论上可以存储的元素是没有上限的); 与顺序栈相比, 由于顺序栈是采用的数组实现, 因此一旦数组填满, 则必须重新申请内存, 并将所有元素”搬家”, 而链栈则省略了这一”耗时耗力”的工作, 但却需要付出附加一个指针的代价; ...
分类:
其他好文 时间:
2015-01-06 20:05:49
阅读次数:
135
栈是一种只允许在一端进行插入或删除操作的线性表.其特点为:先进后出(FILO)/后进先出(LIFO); 栈 VS. 队列 栈和队列都是动态集合, 但在栈中, 可以去掉的是最近插入的那一个,:栈实现了一种后进先出(last-in, first-out)的策略;类似的, 在队列中, 可以去掉的元素总是在集合中存在时间最长的那一个:队列实现了先进先出(first-in, first-out)的策略...
分类:
其他好文 时间:
2015-01-03 21:09:30
阅读次数:
297
/****date:2014.12.08*****/
/***顺序栈的基本操作***/ /*** Last in First out ( LIFO ) ***/
顺序栈:使用地址连续的内存单元依次保存栈中的数据,可以定义一个指定大小的结构数组来作为栈;栈底元素序号为0,栈顶元素序号为Top;
栈内元素遵循“后进先出“(LIFO)原则;只能在栈的一端进行操作,即在栈顶位置对栈内元素进行操作。
...
分类:
其他好文 时间:
2014-12-10 00:36:00
阅读次数:
242
今天接着谈谈栈这个基本的数据结构。栈是后进先出(LIFO)的数据结构,栈的基本模型如下图: 下面用java编程语言对栈的实现进行详细描述: Stack.java 顺序栈的接口 1 package com.yeyan.seqstack; 2 /** 3 * 顺序栈的接口...
分类:
其他好文 时间:
2014-12-09 00:32:00
阅读次数:
270
//SeqStack.h
/*
stack:Last In First Out
*/
//1.定义顺序栈的结构
typedef struct stack
{
DATA data[SIZE+1];
int top; //栈顶
}SeqStack;
//2.初始化栈
SeqStack *SeqStackInit()
{
SeqStack *p;
if(p=(SeqStack *...
分类:
编程语言 时间:
2014-12-05 19:24:13
阅读次数:
186
(001)顺序栈的C++实现
2014/12/4 jxlijunhao
这里通过C++模板类来实现一个顺序栈:
1)初始化
2)入栈
3)出栈
4)取栈顶元素
定义一个头文件
#ifndef SQ_STACK_H
#define SQ_STA...
分类:
编程语言 时间:
2014-12-04 23:17:53
阅读次数:
385
顺序栈是利用一组地址连续的储存单元依次存放栈顶到栈底的数据元素,同时,还必须附加一个指针top(栈顶指针),来动态储存栈顶元素在顺序战中的位置。(通常,top=-1表示空栈)储存结构如下:#define Stack_Size 50//设栈中的元素为50 typedef struct { St...
分类:
其他好文 时间:
2014-11-17 20:54:41
阅读次数:
236
顺序栈的数据结构如下:
typedef struct
{
ElemType data[MaxSize]; //栈数据
int top; //
}SqStack;
实现下列函数:
void InitStack(SqStack* &s); //初始化栈
void DestroyStack(SqStack* &s); //销毁栈
int S...
分类:
其他好文 时间:
2014-11-14 19:48:11
阅读次数:
165
顺序栈,即栈的顺序存储结构是利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时附设指针top指示栈项元素在顺序栈中的位置。
#include "stdio.h"//包含头文件,就是编译时候把stdio.h中的内容替换到这个位置。
struct stack//定义结构体stack
{
int length;//定义整型变量length
struct data *top;//...
分类:
其他好文 时间:
2014-11-02 22:34:32
阅读次数:
220
顺序栈,即栈的顺序存储结构,是利用一组连续的地址单元依次存放自栈底到栈顶的数据元素。同时为栈结构设置栈底指针base与栈顶指针top。若base=NULL,则表明栈结构不存在。top指针初值指向栈底,top=base可用作栈为空的标记。新插入元素后栈顶指针top的值加1,删除元素时减1。即非空栈的栈顶指针top始终在栈顶元素的下一个位置上。
//------------------------栈...
分类:
其他好文 时间:
2014-10-20 11:54:25
阅读次数:
150