
Python算法入门
酸辣粉不要辣
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Python算法入门——第1章 1,桶排序
假如你有7个数需要排序,最大的数为100,那么你就需要101个桶,桶的编号为0-100。你的数列中的数是多少,就往对应的桶里面加一,最后按照顺序打印桶的编号即可。但此排序方式浪费资源极大,数据量大的时候不建议使用,本文只是介绍最基本的算法实现原理,作为入门使用。class Solution(): ''' 对输入的列表进行排序 桶排序 ''' def p...原创 2018-10-31 21:28:05 · 344 阅读 · 0 评论 -
Python爬虫入门——3.9 Scrapy爬虫实战
声明:搬运自“ 从零开始学Python网络爬虫 ”作者:罗攀,蒋仟机械工业出版社ISBN:9787111579991上一节我们讲了Scrapy框架的安装以及基本信息,这一节我们就开始使用Scrapy框架进行知乎数据的爬取。首先利用命令管理器创建一个知乎的项目项目。具体做法是在打开的命令管理器输入 ˚F:(我要创建项目的盘) cd F:\ soft_exercise \ pytho...原创 2018-11-28 20:30:33 · 1626 阅读 · 0 评论 -
Python算法入门——第3章 3.3 广度优先遍历
广度优先遍历是一种用于图的查找算法,它可以帮助我们解决两类问题。第一类问题:从节点A到节点B有没有联通的路径。第二类问题:广泛应用于各大导航App,从节点A出发,前往节点B的哪条路径最短。参考资料:《算法图解》作者:[美] Aditya Bhargava 译者:袁国忠在介绍广度优先遍历的具体内容之前,先让我们了解一下图的概念。图模拟的是一组连接。是由节点(node)与边(edge...原创 2018-11-16 15:58:25 · 405 阅读 · 0 评论 -
Python算法入门——第3章 3.2 快速排序
所谓快速排序,顾名思义,就是一种速度较快的排序方法,是一种常用的排序算法。快速排序基于 D&C 策略(分而治之)即不断把问题细分、化整为零从而把难以处理的大问题变成小问题来处理。一个非常经典的案例就是秦国一统六国,采用远交近攻分而治之的策略。当你不能把眼前的问题解决的时候,你就可以采用分而治之的策略,不断地化整为零,直到变成你能处理的规模。假如说,你顽固的老丈人不同意你与你女朋友的婚事,也...原创 2018-11-14 21:06:46 · 254 阅读 · 0 评论 -
Python算法入门——第3章 3.1 二分法
二分法查找是一种十分高效的方法,可以在极少的步数之内查找到我们需要的内容。这种方法在我们日常生活中随处可见,你可能在熟练地运用这种方法,但是你却没有意识到他的存在罢了。我们先讲几个简单的例子,来说明一下什么是二分法:小学时,人手一本新华字典。当你去查找 “馄饨” 的读音时,你可能会先去目录找到 h 的对应页数,在进行查找,但当你熟练运用字典之后,你可能直接翻到 h 所在的那一部分进行查...原创 2018-11-14 11:06:05 · 319 阅读 · 0 评论 -
Python算法入门——第2章 2,栈
关于栈的相关知识点,请参考以下博文https://blog.youkuaiyun.com/xuqiang20121991/article/details/54139431现在需要用栈来处理回文数,所谓回文字符串就是指正读反读均相同的字符序列,如“席主席”、“记书记”、“aha”和“ahaha”均是回文,但“ahah”不是回文。通过栈这个数据结构我们将很容易判断一个字符串是否为回文。class ...原创 2018-11-02 20:56:09 · 363 阅读 · 0 评论 -
Python算法入门——第2章 1,队列
有一串经过加密的数字需要解密。解密规则是这样的:首先将第 1 个数删除,紧接着将第 2 个数放到这串数的末尾,再将第 3 个数删除并将第 4 个数放到这串数的末尾,再将第 5 个数删除……直到剩下最后一个数,将最后一个数也删除。 class Solution(): ''' 去除重复数字 从大到小排序 ''' def DuiLie(self, x):...原创 2018-11-02 11:19:36 · 433 阅读 · 0 评论 -
Python算法入门——第2章 2.1,栈 习题
以下问题节选自《啊哈!算法》。作者网站的传送门:啊哈磊的官方网站,啊哈论坛,星期天小哼和小哈约在一起玩桌游, 他们正在玩一个非常古怪的扑克游戏——“小猫钓鱼”。游戏的规则是这样的:将一副扑克牌平均分成两份,每人拿一份。小哼先拿出手中的第一张扑克牌放在桌上,然后小哈也拿出手中的第一张扑克牌,并放在小哼刚打出的扑克牌的上面,就像这样两人交替出牌。出牌时,如果某人打出的牌与桌上某张牌的牌面相同,即可...原创 2018-11-03 16:26:04 · 322 阅读 · 0 评论 -
Python算法入门——第1章 3,去重排序
去掉重复的数字,并且将剩余的数字进行从大到小的排序,Python代码如下class Solution(): ''' 去除重复数字 从大到小排序 ''' def MaoPao(self,x): #用集合去重,最后用sorted排序,再用[::-1]倒序处理 a = [i for i in set(x)] ...原创 2018-11-01 15:01:26 · 527 阅读 · 0 评论 -
Python算法入门——第1章 2,冒泡排序
上一篇文章已经说过,桶排序会极大地浪费资源,因此需要用一种更简单的排序方式来完成:冒泡排序。其原理是1.从第一个数字开始,与第二个数进行比较,如果小于第二个数(按从大到小排序),则将其交换数值;2.接着,第二个数与第三个数比较,重复此步骤,直至完成与最后一个数的比较。这样,第一个数就到了它应该呆的地方。但是其他数仍在相对位置没有变动,所以我们仍要重复步骤1,与步骤2.直至所有数字都去到它们该呆的地...原创 2018-11-01 10:34:27 · 205 阅读 · 0 评论