日期:2014-05-16 浏览次数:20353 次
function Inistack(stack){ //初始化一个线性堆栈 stack=new Array(); return stack; } function Empty(stack){ //判断一个线性堆栈是否为空 var returnValue=false; if(stack.length==0) returnValue=true; return returnValue; } function Push(stack,x){ //压入栈操作 var returnValue=0; var stackLength=stack.length; stack.length=stack.length+1; //增加元素的个数 stack[stackLength]=x; //将新值放入 return stalength; //返回最新元素个数 } function Pop(stack){ //出栈操作 var returnValue=NULL; var stackLength=stack.length; if(stackLength>=1){ //如果不是最后一个元素 returnValue=stack[stackLength-1]; //返回该位置的元素值 stack.length=stackLength-1; //减少元素的个数 } return returnValue; } function Get(stack){ //获得栈顶元素 var returnValue=NULL; var stackLength=stack.length; returnValue=stack[stackLength]; //直接返回顶部元素即可 return returnValue; } function Clear(stack){ //清空堆栈 stack.length=0; //将元素的个数清零即可 return true; } function Current_size(stack){ //获得线性堆栈的当前大小 return stack.length; }