• 力扣栈与队列--总结篇


    前言

    八道题,没想到用了五天。当然需要时间的沉淀,但是一天不能啥也不干啊!

    内容

    首先得熟悉特点基本操作

    栈与队列在计算机底层中非常重要,这就是为什么要学好数据结构。

    可视化的软件例如APP、网站之类的,都是非常上层的应用,底层很多功能的实现都是基础的数据结构和算法。

    所以数据结构与算法的应用往往隐藏在我们看不到的地方!

    一些思路和tips

    栈在计算机底层中用于保存程序运行路径中各个点的信息,以便用于回溯操作或其他需要访问已经访问过的节点信息的操作。比如,在解决迷宫问题时,我们可以使用栈来保存已经访问过的节点信息,以便在无法找到解决方案时进行回溯。另外,在进制转化问题中,我们可以使用栈来保存计算过程中的中间结果,以便在最后得出最终答案。 

    队列在计算机底层中也有着广泛的应用。例如,解决主机和外部设备之间速度不匹配问题以及解决CPU竞争问题。在主机和打印机之间,由于主机输出数据的速度远远大于打印机的打印速度,因此需要建立一个打印数据缓冲区。这个缓冲区就是一个队列,主机将数据写入队列后可以继续执行其他任务,而打印机则可以从队列中读取数据并慢慢打印。另外,在多任务调度中,CPU资源的竞争就是一个典型的例子。我们可以使用队列来保存需要执行的任务列表,按照先进先出的原则进行任务调度,从而提高CPU的有效利用率。

    一个队列

    出队再入队到队尾,想象成一个环

    双栈
    两个队列
    堆 

    不是很熟,后续还得学

    另:切片是左闭右开区间

    最后

    下一站,二叉树!

  • 相关阅读:
    java使用poi-tl模版引擎导出word之列表循环数据渲染
    你是否想知道如何应对高并发?Go语言为你提供了答案!
    带头双向循环链表
    一、C#入门
    c/c++: 如何区分c和c++
    Educational Codeforces Round 74 A~F
    RHCSA --- Linux系统文件操作
    Vue <script setup>
    开源数据库MYSQL DBA运维实战 第三章 备份
    面试复习题——底层
  • 原文地址:https://blog.csdn.net/m0_62786673/article/details/134469521