随笔分类 - 数据结构&&算法
摘要:回顾: 今日内容: python实现二叉树的数据结构: . 二叉树的排序方式: - 广度遍历(层次遍历) - 深度遍历: - 前序(根左右):把根放到最前面 - 中序(左根右):把根放到中间 - 后序(左右根):把根放到最后 python实现排序二叉树:
阅读全文
摘要:目录(Content): 一.内存 - 计算机的作用:对数据进行存储和运算。首先我们需要知道我们目前使用的计算机都是二进制的计算机,就以为着计算机只可以存储和运算二进制的数据。例如下载好的一部电影,该电影可以存储到计算机中,计算机中存储的是基于二进制的电影数据,然后我们可以通过相关的视频播放软件结合
阅读全文
摘要:- 回文检测:设计程序,检测一个字符串是否为回文。 - 回文:回文是一个字符串,读取首尾相同的字符,例如,radar toot madam。 - 分析:该问题的解决方案将使用 deque 来存储字符串的字符。我们从左到右处理字符串,并将每个字符添加到 deque 的尾部。在这一点上,deque 像一
阅读全文
摘要:一.双端队列(Deque) - 概念:deque(也称为双端队列)是与队列类似的项的有序集合。它有两个端部,首部和尾部,并且项在集合中保持不变。 - 特性:deque 特殊之处在于添加和删除项是非限制性的。可以在前面或后面添加新项。同样,可以从任一端移除现有项。在某种意义上,这种混合线性结构提供了单
阅读全文
摘要:烫手山芋游戏介绍:6个孩子围城一个圈,排列顺序孩子们自己指定。第一个孩子手里有一个烫手的山芋,需要在计时器计时1秒后将山芋传递给下一个孩子,依次类推。规则是,在计时器每计时7秒时,手里有山芋的孩子退出游戏。该游戏直到剩下一个孩子时结束,最后剩下的孩子获胜。请使用队列实现该游戏策略,排在第几个位置最终
阅读全文
摘要:目录 1.队列 2.用python实现队列 一.队列 - 概念:队列是项的有序结合,其中添加新项的一端称为队尾,移除项的一端称为队首。当一个元素从队尾进入队列时,一直向队首移动,直到它成为下一个需要移除的元素为止。最近添加的元素必须在队尾等待。集合中存活时间最长的元素在队尾,这种排序成为 FIFO,
阅读全文
摘要:一.线性数据结构 - 我们从四个简单但重要的概念开始研究数据结构。栈,队列,deques(双向队列), 列表是一类数据的容器,它们数据元素之间的顺序由添加或删除的顺序决定。一旦一个数据元素被添加,它相对于前后元素一直保持该位置不变。诸如此类的数据结构被称为线性数据结构。 - 线性数据结构有两端,有时
阅读全文
摘要:目录: 1.引言 2.列表 3.字典 一.引言 - 现在大家对 大O 算法和不同函数之间的差异有了了解。本节的目标是告诉你 Python 列表和字典操作的 大O 性能。然后我们将做一些基于时间的实验来说明每个数据结构的花销和使用这些数据结构的好处。重要的是了解这些数据结构的效率,因为它们是本博客实现
阅读全文
摘要:目录(contents): 1.什么是计算机科学?什么是算法? 2.如何形象化的理解算法? 3.什么是算法分析? 4.时间复杂度 5.数据结构 6.总结算法和数据结构之间的关联 一.什么是计算机科学?什么是算法? 首先明确的一点就是计算机科学不仅仅是对计算机的研究,虽然计算机在科学发展的过程中发挥了
阅读全文
摘要:1.数据结构&算法的引言+时间复杂度 2.python数据结构的性能分析 3.基本数据结构-栈 4.基本数据结构-队列 5.队列的应用案例-烫手的山芋 6.基本数据结构-双端队列(Deque) 7.Deque的应用案例-回文检查 8.基本数据结构-顺序表和链表 9算法之顺序,二分,hash查找 10
阅读全文