自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

依然关注

一次就好,我带你去看天荒地老,在阳光灿烂的日子里开怀大笑,在自由自在的空气里吵吵闹闹。...

转载 《算法与数据结构》学习笔记19---二叉树(1)

前言 开始新旅途。ps:内容仅做为本人的学习笔记。 正文 树(Tree) 二话不说先上图。 这里面每个元素叫作“节点”;用来连线相邻节点之间的关系,叫作“父子关系”。 A 节点就是 B 节点的父节点,B 节点是 A 节点的子节点。B、C、D 这三个节点的父节点是同一个节点,所以...

2019-02-28 11:59:46

阅读数 46

评论数 0

转载 《算法与数据结构》学习笔记18---哈希算法

前言     啊,继续学习之旅。     前面几篇提到“散列表”“散列函数”,这里又讲到“哈希算法”,是不是有点一头雾水?实际上,不管是“散列”还是“哈希”,这都是中文翻译的差别,英文其实就是“Hash”。所以,常听到有人把“散列表”叫作“哈希表”“Hash 表”,把“哈希算法”叫作“Hash...

2019-02-26 09:25:55

阅读数 47

评论数 0

转载 《算法与数据结构》学习笔记17---散列表(3)

前言     有没有发现,有两种数据结构,散列表和链表,经常会被放在一起使用。     在链表篇中,提了到如何用链表来实现 LRU 缓存淘汰算法,但是链表实现的 LRU 缓存淘汰算法的时间复杂度是 O(n),通过散列表可以将这个时间复杂度降低到 O(1)。 在跳表篇,提到 Redis 的有序...

2019-02-25 09:45:31

阅读数 66

评论数 0

转载 《算法与数据结构》学习笔记16---散列表(2)

前言     散列表续集。     散列表的查询效率并不能笼统地说成是 O(1)。它跟散列函数、装载因子、散列冲突等都有关系。如果散列函数设计得不好,或者装载因子过高,都可能导致散列冲突发生的概率升高,查询效率下降。     在极端情况下,有些恶意的攻击者,还有可能通过精心构造的数据,使得所...

2019-02-22 09:43:33

阅读数 34

评论数 0

转载 《算法与数据结构》学习笔记15---散列表(1)

前言     关于散列表内容的学习笔记分三篇来记录。 正文     散列表,Hash Table,也叫哈希表或Hash表。散列表用的是数组支持按照下标随机访问数据的特性,所以散列表其实就是数组的一种扩展,由数组演化而来。可以说,如果没有数组,就没有散列表。 散列思想 例一:     假...

2019-02-21 09:13:55

阅读数 56

评论数 0

转载 《算法与数据结构》学习笔记14---跳表

前言     上篇说到,二分查找底层依赖的是数组随机访问的特性,所以只能用数组来实现。那么对于链表,只需要对它进行一些改造就可以支持类似“二分”的查找算法。改造之后的数据结构叫做 跳表(Skip list)。     跳表是一种动态数据结构,可以支持快速的插入、删除、查找操作。写起来也不复杂,...

2019-02-20 09:24:59

阅读数 46

评论数 0

转载 《算法与数据结构》学习笔记13---二分查找

前言     此内容为本人学习笔记。 正文     针对有序数据集合的查找算法:二分查找(Binary Search)算法,也叫折半查找算法。二分查找是一种非常简单易懂的快速查找算法,生活中到处可见。比如说,有一个猜字游戏。一人随机写一个 0 到 99 之间的数字,然后另一人来猜第一个人写的...

2019-02-19 09:41:32

阅读数 48

评论数 0

转载 《算法与数据结构》学习笔记12---排序优化

如何实现一个通用的、高性能的排序函数? 如何选择合适的排序算法? 之前讲的几种排序算法: 时间复杂度 是稳定排序吗 是原地排序吗 冒泡排序 O(n2) 是 是 插入排序 O(n2) 是 是 选择排序 O(n2) 否...

2019-02-18 09:36:58

阅读数 22

评论数 0

转载 《算法与数据结构》学习笔记11---线性排序

开篇     本篇主要介绍三种时间复杂度为O(n)的排序算法:桶排序、计数排序、基数排序。因为这些排序算法的时间复杂度是线性的,所以叫做线性排序(Linear sort)。之所以能做到线性的时间复杂度,主要是因为这三个算法是非基于比较的排序算法,都不涉及元素之间的比较操作 桶排序(Bucket...

2019-02-17 16:21:22

阅读数 34

评论数 0

转载 《算法与数据结构》学习笔记10---排序(下)

前言     本内容来源于个人的学习笔记 。     上一篇主要 是冒泡排序、插入排序、选择排序。本篇的主要内容为归并排序和快速排序。 正文 归并排序     核心思想:如果要排序一个数组,先把数组从中间分成前后两部分,然后对前后两部分分别排序,再将排好序的两部分合并在一起。   ...

2019-02-16 10:03:20

阅读数 36

评论数 0

转载 《算法与数据结构》学习笔记9---排序

前言     本内容为自己的学习笔记,来源于极客时间课程。     排序,排序,万恶的排序啊。 正文 如何分析一个“排序算法”? 排序算法的执行效率 最好情况、最坏情况、平均情况时间复杂度     我们在分析排序算法的时间复杂度时,要分别给出最好情况、最坏情况、平均情况下的时间复杂度。除此之...

2019-02-15 09:15:53

阅读数 58

评论数 0

转载 《算法与数据结构》学习笔记8---递归

前言     本内容为本人学习笔记,课程来自极客时间数据结构与算法。 正文     递归是一种应用广泛的算法,在许多的数据结构和算法的实现中都用到了它,比如深度优先搜索、前序中序后序二叉树的遍历等。举一个感觉有点傻的例子,假如要去电影院看电影,因为各种原因不知道自己现在在第几排,于是你就问前面一排...

2019-02-14 10:43:54

阅读数 42

评论数 0

转载 《算法与数据结构》学习笔记7---队列

前言     本内容源自个人学习笔记,课程内容来处极客时间。 正文 队列,先进先出。     栈的两个基本操作:入栈push()、出栈pop()     队列的基本操作:入队enqueue() 放一个数据到队列尾部、出队dequeue() 从队列头部取一个元素     用数组实现的队列...

2019-02-13 10:52:42

阅读数 33

评论数 0

转载 《算法与数据结构》学习笔记5---链表(下)

前言     本篇主要介绍写链接代码的一些方法。 正文 理解指针或引用的含义     看懂链表并不难,难的是将链表与指针混在一起。有些语言有“指针”的概念,如C,有些没有,取代指针的是“引用”,如JAVA、PYTHON。不管是“指针”还是“引用”,其实都是存储所指对象的内存地址。 ...

2019-02-12 09:51:06

阅读数 44

评论数 0

转载 《算法与数据结构》学习笔记4---链表(上)

前言 本次分两篇来记录链表的内容。 正文 相比数组,链表是一种稍微复杂一点的数据结构。这两个非常基础、非常常用的数据结构,常常将会放到一块儿来比较。两者有什么区别: 从底层的存储结构上来看:从下图中我们看到,数组需要一块连续的内存空间来存储,对内存的要求比较高。如果申请一个 100MB 大...

2019-02-12 09:49:04

阅读数 59

评论数 1

《算法与数据结构》学习笔记6---栈

前言 本内容为自己关于数据结构和算法的学习笔记,课程来源于极客时间。 正文

2019-02-11 11:27:52

阅读数 66

评论数 0

转载 《算法与数据结构》学习笔记3---数组

前言     之前两篇介绍了关于时间、空间复杂度的相关内容,本篇则对数组进行介绍。 正文     数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。 线性表  线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。链...

2019-02-10 16:37:46

阅读数 66

评论数 0

转载 《算法与数据结构》学习笔记2---时间复杂度与空间复杂度(下)

前言 上一篇介绍了时间复杂度和空间复杂度的概念,这一篇关注最好情况时间复杂度、最坏情况时间复杂度、平均情况时间复杂度、均摊时间复杂度。 正文 最好情况时间复杂度:在最理想的情况下,执行代码的时间复杂度。 最情况坏时间复杂度:在最糟糕的情况下,执行代码的时间复杂度。 例: // n表示数...

2019-02-06 17:04:30

阅读数 64

评论数 0

转载 《算法与数据结构》学习笔记1---时间复杂度与空间复杂度(上)

前言     数据结构和算法的重要性相信学计算机的人都知道,一直以来算法和数据结构就是我的心病,相信和大家一样 这门课要说学吧,太难,自己啃不下来。但是不学吧,感觉又好像怎么着似的,弄的人心理不舒服。今在某软件上花重金买了一门《数据结构和算法》课,鼓起勇气认真的学习一次算法和数据结构,希望能对自...

2019-02-03 18:21:12

阅读数 64

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---下载文件和图片(下载360图片)

前言     本文中如有错误,请指正。 背景     前面介绍了Scrapy 下载文件、图片的理论知识,并且例举了一个下载文件的例子,本篇则以360图片的艺术分类 http://image.so.com/z?ch=art 为例,对下载图片进行实践。 码上行动     首先打开360图片的...

2019-01-09 09:07:58

阅读数 63

评论数 0

原创 Python学习笔记---多进程爬虫

前言 本文中如有错误,请指正。本文的正文部分来自书籍《从零开始学python网络爬虫》。 背景     刚开始学习爬虫的时候学习python的urllib库,那时会简单的下载一些网页啊,一些图片。后来学习的爬虫框架scrapy,几乎只要是写爬虫的程序就是用框架写的,但是慢慢感觉,有些内容用框架来写...

2019-01-07 14:36:46

阅读数 72

评论数 0

原创 Python学习笔记----csv文件读写

前方     本文中如有错误请指正。 背景 工作中总会遇到各种各样的问题,虽然现在操作txt文件较多,但是总少不了要读写csv,感觉总是把csv文件转成txt多少会有一些不便,因此打算学习一下读写csv的操作,并写出来作为日后的复习笔记。 所谓CSV(逗号分隔值)格式是电子表格和数据库最常...

2018-12-28 14:22:35

阅读数 37

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---下载文件和图片(下载matplotlib网站文件)

前言     本文中如有错误,请指正。 背景     在上一篇文章中,给大家介绍了Scrapy下载文件和图片的理论内容(https://blog.csdn.net/xue605826153/article/details/85252026), 本篇以matplotlib网站为例具体介绍下载文...

2018-12-26 14:55:00

阅读数 27

评论数 0

转载 西山小菜鸟之Scrapy学习笔记----下载文件和图片(理论部分)

前言     本文中如有错误请指正。内容摘自书《精通Scrapy网络爬虫》 背景     从网页中爬取信息是爬虫最典型的一种应用,除此之外 ,下载文件也是实际应用中很常见的一种需求,例如使用爬虫爬取网站中的图片、视频、WORD文档、PDF文件、压缩包等。 理论     Scrapy 框架内部提供了...

2018-12-25 19:25:24

阅读数 51

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---爬取弹窗信息的一种方法(JS加载的信息)

前言     本文中如有错误,请指正。 背景     在日常爬取信息时我们可能会遇到网页信息无法爬取,网页源码中没有这些内容,他是由JS加载的。一方面,我们可以通过前面介绍的splash渲染网页。另一方面,对于一些由JS加载的网页,我们还可以通过在Network下寻找特定的请求链接,这些链接...

2018-12-18 22:28:57

阅读数 258

评论数 0

原创 西山小菜鸟之Scrapy学习笔记----(番外篇)微信公众号永久链接

前言 本文中如有错误请指正。本文学习了静觅的个人博客 https://cuiqingcai.com/4652.html 我说 前一阵子由于需要,要把从搜狗微信上爬下来的微信公众号文章的临时链接转变为永久链接。一直在网上百度,但天公不做美,一直找不到比较满意的方法。 通过百度我找到几种方法: 使...

2018-12-15 12:50:53

阅读数 97

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---scrapy request payload

前言 本文中如有错误,望指正。 背景     最近在爬取某网站时发现之前学习中没有遇到过的情况,虽然都是发送post请求,但是原来的表单数据Form data变为了request payload(如图)。仍然使用了原来的FormRequest方法,但是不管用。 理论学习     ...

2018-12-04 23:01:18

阅读数 197

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---scrapy发送post请求

前言     本文中如有错误,请指正,谢谢! 背景     默认情况下,scrapy.Request都是采用GET请求,但是我们也会遇到需要发送post请求的时候,如爬取专利网的专利信息时(http://epub.sipo.gov.cn/) 。     因此,我们需要发送post请求,...

2018-11-30 22:47:22

阅读数 152

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---LinkExtractor

前言     本文中如有错误,望指正。 背景     日常爬取一个网站时,想要爬取的数据分布在多个页面中,每个页面包含一部分数据以及到其它页面的链接,提取页面中数据的方法想必大家都有了解,最最最直接的就是xpath了,提取链接的方法则有Selector和LinkExtractor两种方法 。...

2018-11-22 22:45:39

阅读数 71

评论数 0

转载 西山小菜鸟之Scrapy学习笔记---在Scrapy中使用代理

前言 本文中如有错误,请各位指正。 背景     在爬取各大网页信息时,通过会遇到各种各样的反爬措施:很多网站会检测某一段时间某个IP的访问次数,如果访问频率太快以至于看起来不像正常的访客,那么它就可能就会禁止此IP的访问(有兴趣的小伙伴可以试试天眼查这个网站)。所以我们需要设置一些代理服务器,每...

2018-11-20 23:09:52

阅读数 58

评论数 0

转载 西山小菜鸟之Scrapy学习笔记---splash简介

前言         本文主要介绍scrapy-splash的理论知识。文中如有不正确的地方望大家指正。 本文的主要内容出自书:《精通Scrapy网络爬虫》《虫术——Python绝技》 背景         近几年随着前端技术和手机端App的飞速发展,互联网架构也发生了巨大的变化,尤其是一些前端框...

2018-11-14 23:35:11

阅读数 147

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---splash渲染

前言 本文主要以http://www.ccgp.gov.cn/cr/list为例,介绍Scrapy-splash的简单使用。 本文中若存在不详细的地方欢迎各位大神网友提问,若有错误的地方,希望大家指正。谢谢!!

2018-11-12 23:07:10

阅读数 44

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---爬取企查查网公司的裁判文书信息

前方 本文接着上文,爬取企查查的公司裁判文书信息。企查查  本文中若存在不详细的地方欢迎各位大神网友提问,若有错误的地方,希望大家指正。谢谢!!

2018-11-10 22:13:10

阅读数 407

评论数 0

原创 西山小菜鸟之Scrapy学习笔记---爬取企查查网站公司基本信息

前言 本文主要采取cookie登录的方式爬取企查查网站的公司的基本信息,后期会继续发布关于爬取企查查网站上的公司的裁判文书信息。链接为:企查查  本文中若存在不详细的地方欢迎各位大神网友提问,若有错误的地方,希望大家指正。谢谢!!

2018-11-10 21:32:29

阅读数 2308

评论数 14

原创 西山小菜鸟之Scrapy学习笔记---爬取链家网楼盘信息

前言     本文以链家网北京地区为例,介绍自己爬取链家全国楼盘信息。链接如下:链家新房-北京。本文中若存在不详细的地方欢迎各位大神网友提问,若有错误的地方,希望大家指正。谢谢!!

2018-11-10 17:33:25

阅读数 245

评论数 0

原创 仅此 先写一写我的博客初衷

我的博客初衷     第一次接触博客还是在研究生一年级的时候,那时候的我对于博客啊,程序啊还完完全全的是一个新人,对这些的了解只是停留在字面意思上,虽然总想着去了解一些,但总是由于懒而放弃了。      由于发表学术论文需要对算法进行认真,“万般无奈”之下只能自己在网上查资料写程序,慢慢的接...

2018-11-04 22:03:49

阅读数 67

评论数 2

提示
确定要删除当前文章?
取消 删除