栈与队列(六)之总结篇

来源:互联网 发布:.net软件开发工程师 编辑:程序博客网 时间:2024/05/16 15:16

学完栈与队列想想其实就是学它们的思想(栈:后进先出。队列:先进先出),其实抓住了这两个关键内容,再记住一些常用操作格式,就好


一、先讲讲栈的总结:

1.首先栈是后进先出的线性表(只在表尾进行操作)(想象子弹问题)
2.栈的应用在生活中处处都是,它最常用的还是顺序结构,在期间的学习,我也利用栈写了RPN计算器和它的进阶中缀计算器,还有中缀转后缀。都需要利栈的进出,栈顶的不断变换来实现,但在一定程度上提高了效率和自己的编程能力。


二、讲讲队列总结

  1. 队列先进先出的线性表(一端进行插入操作另一端进行删除操作)(想象一下god缓冲问题)
  2. 队列也是很常见的,排队也是,期间也写了一个输入字符并打印出来,也是最起码把基本操作给记住!
  3. 当然队列我只写了一个最主要的链队列,还有一种循环队列(顺序结构)(利用数组)没有写,其实循环队列好比围起一圈,当插入一个数,rear指针就往后移,不指有数的,然后等到数组满了,插不下了,就停止。
  4. 循环队列注意两点:取模运算和front和rear不断加1,即超出了地址范围,就从头开始了

三、取模运算:

(取模就是取余数的意思)(得到的值永远不会大于除数QueueSize)(QueueSize指这个队列的尺寸,指数组大小)(可以确保rear和front指针不会超出,队列的尺寸)

         (rear+1)%QueueSize //比如rear指向3,而这个队列尺寸大        小是4,就可以计算了         (front+1)%QueueSize

栈与队列相关Blog

[链队列](http://blog.csdn.net/w_linux/article/details/54983676)

[中缀计算器代码] (http://blog.csdn.net/w_linux/article/details/54952775)

[进出栈操作及二转十代码](http://blog.csdn.net/w_linux/article/details/54881032)

4 0
原创粉丝点击