当前位置:   article > 正文

数据结构考试知识点总结——栈和队列_循环队列是不是随机存储

循环队列是不是随机存储
  1. 学会求不可能的的出栈序列。
  2. 设计一个判断表达式中左,右括号是否配对出现的算法,采用最佳。
  3. 用链接方式存储的队列,再进行删除运算时,头尾指针可能都要修改
  4. 递归过程或函数调用时,处理参数及返回地址,要用
  5. 将递归算法转换成对应的非递归算法时,通常需要来保存中间结果。
  6. 假设数组A[m]存放循环队列的元素,其头尾指针分别为front和rear,则当前队列中的元素个数为**(rear-front+m)%m**
  7. 栈和队列共同点是只允许在端点处插入和删除元素
  8. 栈和队列的主要区别是限定插入和删除的位置不同
  9. 队列的插入操作是在队尾,删除操作在队首;栈的插入和删除操作在栈顶
  10. 大小为N的数组存储顺序循环队列的最大长度为N-1
  11. 在解决计算机主机和打印机之间速度不匹配的问题时,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入缓冲区,而打印机则从该缓冲区中取走数据打印。该缓冲区是一个队列结构
  12. 循环队列是随机存取的存储结构。
  13. CPU资源管理问题求解过程中无须使用栈。
  14. 页面替换问题求解过程中需要用到队列。
  15. 递归过程或调用函数时,处理参数及返回地址,要用栈。

  1. 顺序栈空条件:top == -1;
  2. 顺序栈满条件:top == MaxSize-1;
  3. 顺序栈元素e进栈操作:top++; data[top] = e;
  4. 顺序栈元素e出栈操作:e = data[top]; top–;

  1. 链栈空条件:S.head.next == null;
  2. 链栈满条件:不考虑
  3. 链栈元素e进栈操作:LinkStack p = new LinkStack; p.data = e; p.next = head.next; head.next = p;
  4. 栈链元素e出栈操作:LinkStack p; p = head.next; e = p.data; head.next = p.next; p = null;

  1. 顺序队空条件:front == rear;
  2. 顺序队满条件:(rear + 1) % MaxSize == front;
  3. 顺序队元素e进队操作:rear = (rear +1) % MaxSize; e = data[rear];
  4. 顺序队元素e出队操作:front = (front + 1) % MaxSize; e = data[front];

  1. 链队队空条件:Q.rear == null;(也可以Q.front == null);
  2. 链队队满条件:不考虑
  3. 链队元素e进队操作:LinkNode p = new LinkNode(); p.data = e; Q.rear.next = p; Q.rear = p;
  4. 链队元素e出队操作:LinkNode p = Q.front; Q.front = Q.front.next; p = null;
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/545009
推荐阅读
相关标签
  

闽ICP备14008679号