幼儿园分班年龄段:请教数据结构问题——堆栈

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 18:57:30
前一段学数据结构(武汉大学出版社),学到了堆栈这种数据结构,我的认为是:它必须按后进先出的原则来进行操作数据,可后边又讲了一种链式堆栈,里面讲了一种指针,可以随意的去修改某个单元的内容,想看哪个数据单元的内容就能看,想该哪个也可以该!我的问题就出来了:
①有了这种链式堆栈不就破坏了堆栈的操作规则了?这样做的意义何在?
②堆栈到底哪里好?还有那个队列,都要按这样或那样的规则访问,与其这样不如直接弄个数组实惠,好用。
请高手指点,不胜感激!

是有这种链表 看到过 不过我不想是故意弄出来的吧
想访问是可以访问的 不过这样就没有什么意义了
共产党规定谋生只准采取正当的手段 但是还是有人用非法的手段 而且成功的获得的银子!
其实不要可以去追求这个,知道就行了 数据结构里很多东西太古老了 现在几乎没用的
建议多看楼下高手是怎么回答的 我数据结构学的着实不怎么样

堆栈 是很有用的 比如说 函数调用 尤其是 递归的算法
至于 添加的指针 不过是 增强数据访问的 灵活性(当然也带来了 数据被修改的风险)
就像 protected 这个关键字 为的是 达到 数据共享与数据隐藏 的一种平衡
至于 队列 为什么要 按照 这样那样的规则 访问
这是 因为 当模拟现实 解决一些特定问题时 这样那样的规则与实际相吻合 并且能够为解决问题 带来一定的方便
每一种 数据结构 都有 自己的优势 但也有自己 的局限 并不能 包治百病
数组 有 数组的 牛逼 堆栈 有堆栈的 强势 等你 学多了 就了解了

堆栈是属于纵向操作,
队列之类的,(个人认为阿)是教给你一种思想,像很多大学学的东西,其实早就过时了,还学一样。

各有各的好处与缺点,堆栈适用于类似开门的处理的,比如要回家先要开大门,然后开房门,最后开卧室门,而离家就要先关卧室门,然后关房门,最后关大门,但是堆栈需要连续的存储空间,如果存储器不能满足需要,就出现了链式堆栈,它可以动态利用存储器空间;队列解决的问题是类似“买车票”问题的,只有前面人买完了你才才能买,这在操作系统的开发上很重要;数组可以储存一维或者多维数据,但是也需要事先有足够大的连续空间,同样会遇到空间分配问题的,于是后来就有了指针数组。