- 博客(59)
- 收藏
- 关注
原创 python一二三【warning模块使用】
warning模块使用目的和exception异常要求用户立刻进行处理不同,warning通常用于提示用户一些错误或者过时的用法。casescrapy源码中用到了继承了Warning类创建了一个提醒对象ScrapyDeprecationWarning,用于提醒过时的用户操作,在新版本可能会直接去除支持。用户感知warningspython参数控制warning输出 ...
2018-05-04 14:55:28
13650
原创 Linux例行性任务
需求两种场景 1. 在某个指定时间执行某项任务。(明天早上检查磁盘状态) 2. 周期性执行某项任务。(每天早上备份日志)分析让程指定时间运行某些任务,提高自己的工作效率,避免人工登录机器去运行,特别是有程序依赖时,比如说有些统计任务依赖于某些程序执行完毕,设置at命令则不用再处理;机器周期性执行某些任务,用于机器维护、程序监控或数据备份及清理。一次性任务使用at命令,依赖于atd服务。a
2017-02-06 18:08:22
1479
原创 MYSQL数据库常用语句
数据库复习趁着放假时间,复习一下数据库的使用。目标: 1. 提高自己的工作效率。 2. 拓宽自己的数据库设计和优化思路。 3. 探索并补充新的知识。数据库命令列表连接、查看数据库相关 命令 用途 示例 备注 mysql -uUSER -hHOST -pPORT -DDATABASE -p(PASSWORD) 终端下
2017-02-03 18:30:40
1168
原创 微信小程序:2048小游戏
实战看了微信小程序的开发文档和熟悉了微信小程序的使用后,拿著名的2048小游戏练练手,做个DEMO玩玩。IDEA界面抽象如下: [重新开始按钮] [模式选择] [用时(秒级)] [难度级别] 时间条 x x x x x x x x x x x x x x x x 排行榜 [[用户图][名字]] 分数 模式 难度 用时进展第一阶段趁着元旦小假期
2017-01-02 00:06:29
13752
1
原创 [leetcode]largest-rectangle-in-histogram
题目Given n non-negative integers representing the histogram’s bar height where the width of each bar is 1, find the area of largest rectangle in the histogram.分析1.第一种想法:遍历每一个柱子,并向左向右扫描高度大于等于该柱的连续柱子个数,计算
2016-12-11 19:31:59
562
原创 [leetcode]convert-sorted-list-to-binary-search-tree
题目Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.分析对于一组已知长度的数据来说,建立一个height balance BTS,这个平衡二叉树的高度是可以计算得出来,并且唯一的。区别在于非完全二叉树情况下,叶子结点位置可以不唯一
2016-12-11 16:59:33
500
原创 [leetcode]copy-list-with-random-pointer
题目A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null. Return a deep copy of the list.分析跟复制常规的单向链表的区别主要在于每个结点多了个random指针
2016-12-11 14:24:26
388
原创 新闻网站爬虫设计
新闻爬取目标:爬取线上各大网站的新闻入库并进行后处理获取需要的信息。新闻源和新闻属性新闻源属性 1.1 源名称 特定源名称,描述该源,比如新浪新闻。 1.2 源唯一标识 特定源ID:primary key 1.3 源URL 新闻源网站:如news.163.com 1.4 源抓取的新闻分类 比如该源下为科技类新闻、体育新闻等。 1.5 源站点类型 用于确定爬取方法,可包括以下类别
2016-12-01 14:53:31
1740
原创 使用Scrapy对新闻进行爬虫(零)
Scrapy学习笔记目标使用Scrapy爬虫框架对获取网站新闻数据。爬虫目标网站:http://tech.163.com 提取内容: url 新闻地址 source 新闻来源 title 新闻标题 editor 新闻编辑 time 新闻时间 content 新闻正文内容 内容存储方式: 文件 数据库 代码爬虫框架文件:scrapy star
2016-09-01 13:55:05
3562
原创 使用Scrapy对新闻进行爬虫(二)
Scrapy Item学习笔记scrapy框架下的Item用于定义抓取的数据内容。实现从非结构化数据(网页)中提取结构化数据时,结构化数据所用的数据结构即为该item(Scrapy.Item)执行方式声明一个item类,scrapy导入该模块并使用item实例来存储结构化数据。 所有数据的类型Field实际是一个dict的别名而已。 开发者创建item类只需关注一点:1.需要从网站中抓取哪些数据
2016-08-29 04:27:05
1477
原创 使用Scrapy对新闻进行爬虫(一)
Scrapy Item Pipeline学习笔记Item Pipeline 主要用于从网页抓取(spider)后对数据Item进行收集,写入数据库或文件中。执行方式spider 在获得item后,会传递给item pipeline,进行后续数据收集工作。 在setting中对item pipeline类路径进行配置,scrapy框架会调用该item pipeline类,为了正确调用, item
2016-08-29 04:06:34
1536
原创 mysql初探
服务器使用mysql.server start启动服务 否则会出现以下错误: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’命令行模式连接数据库:mysql -u root默认端口:3306修改root用户密码:mysql> ALTER USER 'root'@'localhost' IDENTIFIE
2016-07-23 00:53:31
309
原创 PHP中的数组
数组用途arraylist/vectorhash tabledictionarycollectionqueuestacktreemultidimensional arrayPHP数组本质hash table数组定义注意 The comma after the last array element is optional and can be omitted.格式约束As
2016-07-22 22:26:18
389
原创 《算法导论》学习笔记——最长公共子序列(动态规划)
#最长公共子序列(LongestCommonSubsequence Problem;LCS)##问题描述给定两个序列$X={x_1,x_2,x_3...,x_m}$和$Y={y_1,y_2,y_3,...,y_n}$,求X和Y的最长公共子序列。>例子:$X={A,B,C,B,D,A,B}$,$y={B,D,C,A,B,A}$,最长公共子序列为${B,C,B,A}$。
2015-05-04 23:08:10
1104
原创 查找(搜索)算法(**Search algorithm**)
(学习资料来源:维基百科,《算法导论》,《大话数据结构》,《编程珠玑》,《编程珠玑续》,google)查找(搜索)算法(Search algorithm)(下面的定义参考自《大话数据结构》) 查找表(Search Table)由同一类型的数据元素(或记录)构成的集合。 关键字(Key) 是数据元素中某个数据项的值,又称为键值,用它可以标识一个数据元素。也可以标志
2015-04-17 16:01:02
2214
原创 数据结构——图
图(Graph) (参考资料:《大话数据结构》《算法导论》) 图是由顶点的有穷非空集合和顶点之间的边的集合组成,通常表示为:G(V,E),其中G表示一个图,V是图G中顶点(Vertex)的集合,E是图中边的集合。 图的相关术语 1.无向图与有向图 无向图:图中任意两个顶点u和v之间的边没有方向(无
2015-04-13 19:25:51
833
原创 OVa Online Judge 学习笔记- AOAPC I: Volume 2. Data Structure Tree
ACM做题笔记112 - Tree Summing技巧:递归+树先序遍历知识点:利用递归获得二叉树
2015-04-01 16:17:25
711
原创 数据结构专题——二叉查找树
一、二叉查找树(Binary Search Tree)名称二叉搜索树(Binary Search Tree) 有序二叉树(Ordered Binary Tree) 已排序二叉树(Sorted Binary Tree)二叉树性质若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 任意节点的左、右子树也分别为二
2015-04-01 08:25:01
753
原创 OVa Online Judge 学习笔记- AOAPC I: Volume 2. Data Structure Lists
一、题目二、C++原因:避免自己构造相应的list,包括静态存储结构,链式存储结构。C++ STL Container:1.数组 array:Arrays are fixed-size sequence containers: they hold a specific number of elements ordered in a strict linear seque
2015-03-27 19:43:53
1346
原创 OVa Online Judge 学习笔记- AOAPC I Volume 1. Sorting/Searching
一、题目二、做题笔记1.10420 - List of Conquests知识点:字符串排序,及相似字符串统计。题目和10815相当类似,稍微修改下输出和读取格式即可。(C版本,使用qsort进行排序,自己实现用于比较字符串的compare函数)答题记录:AC拓展:可以写C++版本,调用中的sort函数进行排序。2.10474 - Where is the Marb
2015-03-25 16:01:50
1418
原创 OVa Online Judge 学习笔记- AOAPC I Volume 1. Elementary Problem Solving Big Number
一、题目二、做题笔记1.424 - Integer Inquiry技巧:构造高精度类。类中数组长度可以根据题目条件修改以节约空间或防止溢出。题目重点是求和。答题记录:WA原因:字符串含有前导零影响运算,实现clean方法去除前导零。第二次还出现错误:发现是输出单行结果后没有加换行符(文中并未提示)而直接结束输出所导致。2.10106 - Product技
2015-03-25 12:11:14
751
原创 OVa Online Judge 学习笔记- AOAPC I Volume 1. Elementary Problem Solving String
一、题目二、做题笔记1.10010 - Where's Waldorf?技巧:采用二维数组存储及遍历字符,使用ctype对字符进行大小写转换,注意数组边界即可解决问题。答题记录:一次通过2.10361 - Automatic Poetry技巧:putchar、gets输入输出函数使用,使用由字符串首地址加上偏移量形成的指针快速输出字符串后半部分;数组来存储匹配的字符索引
2015-03-24 15:25:20
578
原创 OVa Online Judge 学习笔记
一、总学习原则: 1.使用有道词典记录单词,并提高英语阅读能力,增加词汇量。 2.《算法竞赛入门经典》指导下,先按照学习内容做题,再自由选题。 3.做好做题的笔记,记录技巧,错误原因,及新知识点总结。 4.实现优先使用C语言,设计高级算法时考虑使用C++。辅助书籍:C语言相关几个书、《算法导论》二、AOAPC I 题目总览及笔记:494:知识点:
2015-03-23 10:46:38
810
原创 HDOJ笔记
ID 1000: 学会使用scanf,注意scanf将忽略所有空白字符(空格、回车符、制表符)。ID 1001: 防止运算过程中,数据溢出,该问题描述中注明了结果在32位有符号整数范围内,自己写算法时会发现中间过程会存在数据溢出,需根据中间范围上界(32位无符号整数可以),考虑使用强制类型转换(unsigned)。 关键知识点:考虑数据大小,防止程序计算发生溢出现象。
2015-03-18 11:01:13
579
原创 《计算机程序的构造和解释》学习笔记———数值积分
一、数值分析 數值分析(英語:numerical analysis),是指在數學分析(區別於離散數學)問題中,對使用數值近似(相對於一般化的符號運算)演算法的研究。 (参考:http://zh.wikipedia.org/wiki/数值分析) 研究领域: 1.函數求值 2.內插法、外推法、曲線擬合及回歸 3.求解方程及方程組 4.求解特徵值
2015-03-15 10:13:28
733
原创 《算法导论》学习笔记——背包问题
一、背包问题(knapsack problem)(参考维基百科: http://en.wikipedia.org/wiki/Knapsack_problem)1. 0-1 背包问题(0-1 knapsack problem the most common problem):2. 有界背包问题(bounded knapsack problem BKP):3.
2015-03-03 16:11:07
1257
原创 《编程之美》学习笔记——2.13子数组的最大乘积
一、问题 给定一个长度为N的整数数组,只允许使用乘法,不能用除法,计算任意(N-1)个数的组合乘积中最大的一组,并写出算法的时间复杂度。分析:输入:长度为N的整数数组array。输出:这里输出两个值,(N-1)个数的组合最大乘积multiple,以及剔除的数在数组中的索引index_delete。约束:不能用除法计算。二、解法 解法一 暴力求解法
2015-02-18 00:02:52
643
原创 《编程之美》学习笔记——2.11寻找最近点对
一、问题给定平面上N个点的坐标,找出距离最近的两个点。分析:输入:N个点,即N组坐标(N >= 2),每个坐标可以用数据结构Point结构体来表示,存储x和y坐标。输出:两个点,即2组坐标。约束:输出的两个点在输入所有的点中距离最近。附加:可以把最小距离值也作为一个输出。思考:可以先考虑一维情况下问题的解,在拓展处理二维情况(平面)。二、一维解法我们
2015-02-15 18:53:13
809
原创 数据结构专题——堆
一、堆(heap)别称:优先队列(priority queue)思想:(参考维基百科:http://zh.wikipedia.org/zh-cn/堆 )在队列中,调度程序反复提取队列中第一个作业并运行,因为实际情况中某些时间较短的任务将等待很长时间才能结束,或者某些不短小,但具有重要性的作业,同样应当具有优先权。堆即为解决此类问题设计的一种数据结构。定义:(参考维基
2015-02-05 16:06:56
700
原创 《编程之美》学习笔记——2.5寻找最大的K个数
一、问题 有很多无序的数,假定它们各不相等,从中找出最大的K个数。问题分析: 输入:N个数;K。 输出:N个数中最大的K个数,这K个数并不需要是有序的,只需为数组中最大的K个数即可。二、解法 解法一 排序算法数组全部数排序:可以对数组进行快速排序(O(nlgn)),然后获得最大的K个数(O(k))。这种方法下总的时间复杂度O(nlgn + k)=O(
2015-02-04 13:27:21
637
原创 《编程之美》学习笔记——2.19区间重合判断
一、问题 给定一个源区间[x,y](y>=x)和N个无序的目标区间[x1,y1],[x2,y2],...,[xn,yn],判断源区间[x,y]是不是在目标区间内。例: 给定源区间[1 6]和一组无须的目标区间[2 3][1 2][3 9],即可认为区间[1 6]在区间[2 3][1 2][3 9]内(因为目标区间实际上时[1,9])。问题分析: 输入:源区间[x,y],可
2015-02-03 15:23:10
846
原创 《编程之美》学习笔记——2.21只考加法的面试题
一、问题我们知道:1 + 2 = 3;4 + 5 = 9;2 + 3 + 4 = 9;等式两边都是两个以上的连续的自然数相加,那么是不是所有的整数都可以写成这样的形式呢?稍微考虑一下,我们发现,4、8等数并不能写成这样的形式。问题1:写一个程序,对于一个64位正整数,输出它所有可能的连续自然数(两个以上)之和的算式。问题分析:输入:Sum(64位正整数),可转化为:
2015-01-26 14:05:11
969
原创 查找专题——二分搜索及其拓展
一、二分查找(折半搜索)(binary search / half-interval search)思想:算法采用分治思想(divide and conquer algorithm),二分查找从表中间开始查找目标元素。如果找到一致元素,则查找成功。如果中间元素比目标元素小,则仍用二分查找方法查找表的后半部分(表是递增排列的),反之中间元素比目标元素大,则查找表的前半部分。输入:查找表必
2015-01-24 19:27:31
871
原创 数据结构专题——树
一、树(Tree)定义(参考维基百科: http://en.wikipedia.org/wiki/Tree_%28data_structure%29):A tree is a (possibly non-linear) data structure made up of nodes or vertices and edges without having any cycle. Th
2015-01-22 16:49:19
539
原创 数据结构专题——队列
一、队列(queue)思想:队列实现的是一种先进先出(first-in,first-out,FIFO)策略。(《算法导论》)定义:队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。(《大话数据结构》)
2015-01-22 15:55:38
980
原创 数据结构专题——栈
一、栈(stack)(可与队列对比进行学习)思想:栈实现的是一种后进先出(last-in,first-out,LIFO)策略。(《算法导论》)定义:栈是限定仅在表尾进行插入和删除操作的线性表(具有线性关系/前驱后继关系)。(《大话数据结构》)术语:栈的两端:栈顶(top):允许插入和删除操作的一端。栈底(bottom):不允许插入和删除的一端。(栈特点:栈底是固定的,最先进栈的只能
2015-01-21 15:31:39
731
原创 数据结构专题——线性表
一、线性表及其分类(定义部分参考自《大话数据结构》及维基百科)线性表(List / Linear List):零个或多个数据元素的有限序列。线性表的基本操作(涉及算法中方法实现): 线性表初始化; 求线性表长度; 获取元素操作; 查找元素操作; 插入元素操作; 删除元素操作;其他:判断线性表是否为空;清空线性表;线性表可以存储结构特点
2015-01-19 15:27:44
889
原创 《编程之美》学习笔记——2.12快速寻找满足条件的两个数
一、问题 能否快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的数字,为了简化起见,我们假设这个数组中肯定存在至少一组符合要求的解。 问题分析: 输入:一个长度为N的数组和一个给定的数X。 输出:数组中的两个数字A和B。 约束:X = A + B,且A和B至少存在一组。 其他:题目中只说了数字,说明这些数可能为正整数、负整数、零或浮点数等,不太可能通过给
2015-01-18 19:27:39
651
原创 《编程之美》学习笔记——2.6精确表达浮点数
一、问题 在计算机中,使用float或者double来存储小数是不能得到精确值的。如果你希望得到精确计算结果,最好是用分数形式来表示小数。有限小数或者无限循环小数都可以转化为分数。比如: 0.9 = 9/10 0.333(3)= 1/3(括号中的数字表示是循环节) 当然一个小数可以用好几种分数形式来表示。如: 0.333(3)= 1/3 = 3/9
2015-01-18 15:12:53
916
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人