4-1改写顺序栈的进栈成员函数Push(x),要求当栈满时执行.docVIP

  • 126
  • 0
  • 约2.57万字
  • 约 17页
  • 2018-11-16 发布于河北
  • 举报

4-1改写顺序栈的进栈成员函数Push(x),要求当栈满时执行.doc

4-1改写顺序栈的进栈成员函数Push(x),要求当栈满时执行.doc

4-1 改写顺序栈的进栈成员函数Push (x ),要求当栈满时执行一个stackFull ( )操作进行栈满处理。其功能是:动态创建一个比原来的栈数组大二倍的新数组,代替原来的栈数组,原来栈数组中的元素占据新数组的前MaxSize位置。 【解答】templateclass Typevoid stackType :: push ( const Type item ) { if ( isFull ( ) ) stackFull ( ); //栈满,做溢出处理 elements [ ++top ] = item; //进栈 } templateclass Type void stackType :: stackFull ( ) { Type * temp = new Type [ 3 * maxSize ]; //创建体积大二倍的数组 for ( int i = 0; i = top; i++ ) //传送原数组的数据 temp[i] = elements[i]; delete [ ] elements; //删去原数组 maxSize *= 3; //数组最大体积增长二倍 elements = temp; //新数组成为栈的数组空间 } 4-2 铁路进行列车调度时, 常把

文档评论(0)

1亿VIP精品文档

相关文档