在前面的章节中,我们介绍了两个数据结构:队列和栈 1. 队列 队列是一种 FIFO 式的数据结构:第一个元素将被首先处理。有两个重要操作:入队和出队。我们可以使用带有两个指针的动态数组来实现队列。 我
whisper 发布于 2020年02月09日 17时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
先决条件:树的遍历 与 BFS 类似,深度优先搜索(DFS)是用于在树/图中遍历/搜索的另一种重要算法。也可以在更抽象的场景中使用。 正如树的遍历中所提到的,我们可以用 DFS 进行 前序遍历,中序遍
whisper 发布于 2020年02月03日 04时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
本章节中,我们将介绍另一种处理顺序后入先出(LIFO),以及相应的数据结构,栈。 完成本章节后,你将: 理解 LIFO 和 栈的定义; 能够用动态数组实现栈; 熟悉内置栈结构; 能够使用栈解决问题。
whisper 发布于 2020年02月02日 19时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
先决条件:树的层序遍历 广度优先搜索(BFS)是一种遍历或搜索数据结构(如树或图)的算法。 如前所述,我们可以使用 BFS 在树中执行层序遍历。 我们也可以使用 BFS 遍历图。例如,我们可以使用 B
whisper 发布于 2020年02月02日 01时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
本章节中,我们将首先介绍先入先出(FIFO)及其在队列中的工作方式。 本章的目的是帮助你: 理解 FIFO 和队列的定义; 能够自己实现队列; 熟悉内置队列结构; 使用队列来解决简单的问题。 先入先出
whisper 发布于 2020年02月01日 23时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
介绍 在数组中,我们可以通过索引访问随机元素。 但是,在某些情况下,我们可能想要限制处理顺序。 在这张卡片中,我们介绍了两种不同的处理顺序,先入先出和后入先出;以及两个相应的线性数据结构,队列和栈。
whisper 发布于 2020年02月01日 22时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
数组是数据结构中的基本模块之一。因为字符串是由字符数组形成的,所以二者是相似的。大多数面试问题都属于这个范畴。 在这张卡片中,我们将介绍数组和字符串。完成这张卡片后,你将: 了解数组和动态数组之间的区
whisper 发布于 2019年08月13日 05时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
本章节中,我们将介绍两个重要的概念:数组和动态数组。 这是你应当熟悉的基本数据结构。 我们也为你提供了使用内置的数组和动态数组的教程。 完成本章后,你将能够回答以下问题: 数组和动态数组之间有什么不同
前面的章节中,我们已经了解了一维数组。然而,有时候,我们可能需要用到多维数组,它更适合像表或矩阵这样更复杂的结构。 本章节中,我们将重点围绕二维数组来解释: 多维数组是如何工作的? 如何运用二维数组来
whisper 发布于 2019年08月13日 06时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
正如我们在概览中提到的那样,字符串是一个由字符构成的数组。 本章节中,我们将深入研究字符串。完成本章后,你将: 熟悉字符串中的基本操作,尤其是在数组中没有的独特操作; 理解不同比较函数之间的区别; 判
完成前面的章节后,我们现在已经熟悉了数组和字符串的概念,并且能够在数组或字符串中执行基本操作。 通过执行这些操作,我们可以解决一些基本问题。但这显然是不够的。 本章节中,我们将探讨双指针技巧,它可以帮
whisper 发布于 2019年08月13日 08时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
本章节中,我们提供了你可能希望在将来知道的与数组相关的更多数据结构或技术的列表。我们将继续发布更多的卡片并更新本文中的链接,以帮助你逐一征服这些主题。 我们也为你准备了一些与数组/字符串相关的练习。请
whisper 发布于 2019年08月13日 09时 | 分类: 设计模式与算法 | 标签: 设计模式与算法 / leetcode
登陆 注册