数据结构 -- python
Mr_Rip
这个作者很懒,什么都没留下…
展开
-
数据结构 -- 队列举例
队列的典型应用之一是模拟需要以 FIFO 方式管理数据的真实场景。首先,让我们看看孩子们的游戏烫手山芋,在这个游戏中(见 Figure 2),孩子们围成一个圈,并尽可能快的将一个山芋递给旁边的孩子。在某一个时间,动作结束,有山芋的孩子从圈中移除。游戏继续开始直到剩下最后一个孩子。Figure 2 模拟:烫手山芋 这个游戏相当于著名的约瑟夫问题,一个一世纪著名历史学家弗拉维奥·约瑟夫...原创 2018-11-02 10:58:33 · 1292 阅读 · 0 评论 -
数据结构 -- 栈举例
栈栈是一个线性的有序集合,其中添加移除新项总发生在同一端。这一端通常称为“顶部”。与顶部对应的端称为“底部”。最近添加的项是最先会被移除的。这种排序原则有时被称为LIFO(Last In First Out),后进先出。它基于在集合内的时间长度做排序。较新的项靠近顶部,较旧的项靠近底部。栈的底部很重要,因为在栈中靠近底部的项是存储时间最长的。栈的例子很常见。几乎所有的自助餐厅都有一...原创 2018-11-02 22:44:18 · 2251 阅读 · 0 评论 -
数据结构 - 树举例
定义一:树由一组节点和一组连接节点的边组成。树具有以下属性:树的一个节点被指定为根节点。 除了根节点之外,每个节点 n 通过一个其他节点 p 的边连接,其中 p 是 n 的父节点。 从根路径遍历到每个节点路径唯一。 如果树中的每个节点最多有两个子节点,我们说该树是一个二叉树。定义二: 树可以是空的,或者由一个根节点和零个或多个子树组成,每个子树也是一棵树。每个子树的根节点通过边连接...原创 2018-11-11 23:27:49 · 1223 阅读 · 0 评论 -
数据结构 - 快速排序举例
之前学习的时候就一直很注意快速排序,但是看完总是忘记,这一次看到一个视频系列讲解十分透彻,可以分享给大家https://www.bilibili.com/video/av17888877这是一个三集的讲解快速排序的,给予充足的思考时间,方便大家学习,再次感谢B站博主的分享.快速排序使用分而治之来获得与归并排序相同的优点,而不使用额外的存储。然而,作为权衡,有可能列表不能被分成两半。当这种情...原创 2018-12-01 20:57:37 · 1890 阅读 · 0 评论 -
数据结构 - 树的遍历方法举例
树的遍历我们已经见到了树数据结构的基本功能,现在是看树的一些额外使用模式的时候了。这些使用模式可以分为我们访问树节点的三种方式。有三种常用的模式来访问树中的所有节点。这些模式之间的差异是每个节点被访问的顺序。我们称这种访问节点方式为“遍历”。我们将看到三种遍历方式称为前序,中序和后序 。让我们更仔细地定义这三种遍历方式,然后看看这些模式有用的一些例子。前序 在前序遍历中,我们首先访问根节点...原创 2018-12-01 23:41:20 · 749 阅读 · 0 评论