zoukankan      html  css  js  c++  java
  • 【算法】7 分不清栈和队列?一张图给你完整体会

    栈和队列

    学过没学过算法的应该都听过栈和队列了吧,往往容易弄混的就是“后进先出”和“先进先出”了。

    今天又看到了“河内塔”的相关资料,也被称为“汉诺塔”等。于是就想到了画出下面这样的图案。

    这里写图片描述

    如果大家觉得这张图不错可以直接右键另存为哦,记得点赞哈~

    那么,关于栈和队列下面就直接列出相关操作的伪代码咯。

    STACK-EMPTY(S)
    1   if S.top==0
    2       return TRUE
    3   else
    4       return FLASE
    PUSH(S,k)
    1   S.top=S.top+1
    2   S[S.top]=x
    POP(S)
    1   if STACK-EMPTY(S)
    2       error "underflow"
    3   else 
    4       S.top=S.top-1
    5   return S[S.top+1]

    队列

    ENQUEUE(Q,x)
    1   Q[Q.tail]=x
    2   if Q.tail==Q.length
    3       Q.tail=1
    4   else
    5       Q.tail=Q.tail+1
    DEQUEUE(Q)
    1   x=Q[Q.head]
    2   if Q.head=Q.length
    3       Q.head=1
    4   else 
    5       Q.head=Q.head+1
    6   return x

    这篇博客比较短,不过还是希望大家继续关注啦……

    版权声明:本文为 NoMasp柯于旺 原创文章,如需转载请联系本人。

  • 相关阅读:
    可变长参数
    函数的参数
    函数
    文件操作
    字符编码
    数据类型的内置方法:集合
    数据类型的内置方法:元组
    数据类型的内置方法:字典
    数据类型内置方法:列表
    js对对象引用
  • 原文地址:https://www.cnblogs.com/NoMasp/p/4785994.html
Copyright © 2011-2022 走看看