首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

顺序表的清空(clearList)操作,该如何解决

2013-11-25 
顺序表的清空(clearList)操作我在学严蔚敏老师的数据结构,顺序表的清空操作如下。Status ClearList(SqList

顺序表的清空(clearList)操作
我在学严蔚敏老师的数据结构,顺序表的清空操作如下。

Status ClearList(SqList *L)
 { /* 初始条件:顺序线性表L已存在。操作结果:将L重置为空表 */
   (*L).length=0;
   return OK;

有点小疑问,概念定义长度为零的表为空表,这里好像只做了一个(*L).length=0;那表中元素不是还存在吗?还能访问这些元素吗?请详细解答。 数据结构 c语言 线性表
[解决办法]
如果没有额外自己手动分配内存的话,而且也是通过lenfth来寻找元素的话,
那就可以这么操作了!
要结合上下代码看看~!
[解决办法]
引用:
还有,把顺序栈清空为什么只做(*S).top=(*S).base;这一步操作?
Status ClearStack(SqStack *S)
 { /* 把S置为空栈 */
   (*S).top=(*S).base;
   return OK;
 }

因为这样就表示栈内没有数据了,你可能是想问为什么不用把数据清空?数据先清空,才算是清空。不,只用将栈顶指向栈底就行了,原来空间的数据会被新数据直接覆盖,这样就节省了去清空数据的时间。

热点排行