摘要: 11.二叉树 python实现二叉树的数据结构: . 二叉树的排序方式: - 广度遍历(层次遍历) - 深度遍历: - 前序(根左右):把根放到最前面 - 中序(左根右):把根放到中间 - 后序(左右根):把根放到最后 class Node(): def init(self,item): self. 阅读全文
posted @ 2021-07-13 15:34 杨梅杨梅 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 10.排序 一.冒泡排序 代码示例: #将乱序列表中最大元素排列到列表末尾位置 def m_sort(alist): for j in range(0,len(alist)-1): if alist[j] > alist[j+1]: temp = alist[j] alist[j] = alist[ 阅读全文
posted @ 2021-07-13 15:25 杨梅杨梅 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 9.算法之顺序、二分、hash查找 一.查找/搜索 - 我们现在把注意力转向计算中经常出现的一些问题,即搜索或查找的问题。搜索是在元素集合中查找特定元素的算法过程。搜索通常对于元素是否存在返回 True 或 False。有时它可能返回元素被找到的地方。我们在这里将仅关注成员是否存在这个问题。 - 在 阅读全文
posted @ 2021-07-13 15:22 杨梅杨梅 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 8.基本数据结构-顺序表和链表 一.内存 - 计算机的作用:对数据进行存储和运算。首先我们需要知道我们目前使用的计算机都是二进制的计算机,就以为着计算机只可以存储和运算二进制的数据。例如下载好的一部电影,该电影可以存储到计算机中,计算机中存储的是基于二进制的电影数据,然后我们可以通过相关的视频播放软 阅读全文
posted @ 2021-07-13 15:16 杨梅杨梅 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 7.Deque的应用案例-回文检查 回文检测:设计程序,检测一个字符串是否为回文。 回文:回文是一个字符串,读取首尾相同的字符,例如,radar toot madam。 分析:该问题的解决方案将使用 deque 来存储字符串的字符。我们从左到右处理字符串,并将每个字符添加到 deque 的尾部。在这 阅读全文
posted @ 2021-07-13 15:15 杨梅杨梅 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 6.基本数据结构-双端队列(Deque) 一.双端队列(Deque) - 概念:deque(也称为双端队列)是与队列类似的项的有序集合。它有两个端部,首部和尾部,并且项在集合中保持不变。 - 特性:deque 特殊之处在于添加和删除项是非限制性的。可以在前面或后面添加新项。同样,可以从任一端移除现有 阅读全文
posted @ 2021-07-13 15:13 杨梅杨梅 阅读(496) 评论(0) 推荐(0) 编辑
摘要: 5.队列的应用案例-烫手的山芋 烫手山芋游戏介绍:6个孩子围城一个圈,排列顺序孩子们自己指定。第一个孩子手里有一个烫手的山芋,需要在计时器计时1秒后将山芋传递给下一个孩子,依次类推。规则是,在计时器每计时7秒时,手里有山芋的孩子退出游戏。该游戏直到剩下一个孩子时结束,最后剩下的孩子获胜。请使用队列实 阅读全文
posted @ 2021-07-13 15:12 杨梅杨梅 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 4.基本数据结构-队列 一.队列 - 概念:队列是项的有序结合,其中添加新项的一端称为队尾,移除项的一端称为队首。当一个元素从队尾进入队列时,一直向队首移动,直到它成为下一个需要移除的元素为止。最近添加的元素必须在队尾等待。集合中存活时间最长的元素在队首,这种排序成为 FIFO,先进先出,也被成为先 阅读全文
posted @ 2021-07-13 15:10 杨梅杨梅 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 3.基本数据结构-栈 一.线性数据结构 - 我们从四个简单但重要的概念开始研究数据结构。栈,队列,deques(双向队列), 列表是一类数据的容器,它们数据元素之间的顺序由添加或删除的顺序决定。一旦一个数据元素被添加,它相对于前后元素一直保持该位置不变。诸如此类的数据结构被称为线性数据结构。 - 线 阅读全文
posted @ 2021-07-13 15:09 杨梅杨梅 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 2.python数据结构的性能分析 一.引言 - 现在大家对 大O 算法和不同函数之间的差异有了了解。本节的目标是告诉你 Python 列表和字典操作的 大O 性能。然后我们将做一些基于时间的实验来说明每个数据结构的花销和使用这些数据结构的好处。重要的是了解这些数据结构的效率,因为它们是本博客实现其 阅读全文
posted @ 2021-07-13 15:08 杨梅杨梅 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 1.数据结构&算法的引言+时间复杂度 一.什么是计算机科学? 首先明确的一点就是计算机科学不仅仅是对计算机的研究,虽然计算机在科学发展的过程中发挥了重大的作用,但是它只是一个工具,一个没有灵魂的工具而已。所谓的计算机科学实际上是对问题、解决问题以及解决问题的过程中产生产生的解决方案的研究。例如给定一 阅读全文
posted @ 2021-07-13 15:07 杨梅杨梅 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 05.Python网络爬虫之三种数据解析方式 引入 回顾requests实现数据爬取的流程 指定url 基于requests模块发起请求 获取响应对象中的数据 进行持久化存储 其实,在上述流程中还需要较为重要的一步,就是在持久化存储之前需要进行指定数据解析。因为大多数情况下的需求,我们都会指定去使用 阅读全文
posted @ 2021-07-13 15:04 杨梅杨梅 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 08.Python网络爬虫之图片懒加载技术、selenium和PhantomJS 引入 今日概要 图片懒加载 selenium phantomJs 谷歌无头浏览器 知识点回顾 验证码处理流程 今日详情 动态数据加载处理 一.图片懒加载 什么是图片懒加载? 案例分析:抓取站长素材http://sc.c 阅读全文
posted @ 2021-07-13 15:02 杨梅杨梅 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 03.Python网络爬虫第一弹《Python网络爬虫相关基础概念》 爬虫介绍 引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的应用还是从就业上。 我们都知道 阅读全文
posted @ 2021-07-13 15:00 杨梅杨梅 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 08.Python网络爬虫之图片懒加载技术、selenium和PhantomJS 引入 今日概要 图片懒加载 selenium phantomJs 谷歌无头浏览器 知识点回顾 验证码处理流程 今日详情 动态数据加载处理 一.图片懒加载 什么是图片懒加载? 案例分析:抓取站长素材http://sc.c 阅读全文
posted @ 2021-07-13 14:59 杨梅杨梅 阅读(266) 评论(0) 推荐(0) 编辑
摘要: Python网络爬虫之三种数据解析方式 引入 回顾requests实现数据爬取的流程 指定url 基于requests模块发起请求 获取响应对象中的数据 进行持久化存储 其实,在上述流程中还需要较为重要的一步,就是在持久化存储之前需要进行指定数据解析。因为大多数情况下的需求,我们都会指定去使用聚焦爬 阅读全文
posted @ 2021-07-13 14:58 杨梅杨梅 阅读(508) 评论(0) 推荐(0) 编辑
摘要: Python网络爬虫之Scrapy框架(CrawlSpider) 引入 提问:如果想要通过爬虫程序去爬取”糗百“全站数据新闻数据的话,有几种实现方法? 方法一:基于Scrapy框架中的Spider的递归爬取进行实现(Request模块递归回调parse方法)。 方法二:基于CrawlSpider的自 阅读全文
posted @ 2021-07-13 14:56 杨梅杨梅 阅读(71) 评论(0) 推荐(0) 编辑
摘要: Python网络爬虫之requests模块(2) 今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 知识点回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 了解cookie和session 无状态的http协议 阅读全文
posted @ 2021-07-13 14:54 杨梅杨梅 阅读(108) 评论(0) 推荐(0) 编辑
摘要: Python网络爬虫之requests模块(1) 引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用。 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症、冗余代码症、重新发明轮子症、啃文档症、抑郁、头疼、甚至死亡。 今日概要 基于requ 阅读全文
posted @ 2021-07-13 14:53 杨梅杨梅 阅读(106) 评论(0) 推荐(0) 编辑