自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 动态规划——LeetCode 1143. 最长公共子序列

LeetCode 1143. 最长公共子序列题目描述分析代码题目描述给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-common-subsequence著作权

2021-05-03 20:28:49 136

原创 动态规划----LeetCode 64. 最小路径和

LeetCode 64. 最小路径和题目描述分析代码题目描述给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。分析1、对于某一个格子grid[i][j](除了第一行,第一列外。第i行,第j列的格子),到达其路径可以是从它左边过来或者从它的上面过来。2、第一排和第一列的格子的最短路径就是直线往右或直线往下。3、令dp[i][j]表示到达第i行,第j列格子的最短路径和。 grid[i][j]

2021-05-03 18:47:59 162

原创 面试题 17.16. 按摩师

面试题 17.16. 按摩师题目描述分析代码题目描述一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/the-masseuse-lcci著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。分析输入: [2,1,4,

2021-05-03 18:01:22 103

原创 动态规划------剑指 Offer 42. 连续子数组的最大和

剑指 Offer 42. 连续子数组的最大和题目描述分析代码题目描述输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。分析输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。这道题是动态规划的简单题,要求数组中连续子序列的和最大值。直接给出动态转移方程:对于第i个元素:sum[i]=max{sum[i−1]+nums[i],nums[

2021-05-03 16:45:26 64

原创 贪心算法------LeetCode 321拼接最大数

Leetcode 321.拼接最大数题目描述分析输入数据的运行步骤如何选取最大子序列如何对数组进行归并形成新数主函数题目描述给定长度分别为 m 和 n 的两个数组,其元素由 0-9 构成,表示两个自然数各位上的数字。现在从这两个数组中选出 k (k <= m + n) 个数字拼接成一个新的数,要求从同一个数组中取出的数字保持其在原数组中的相对顺序。求满足该条件的最大数。结果返回一个表示该最大数的长度为 k 的数组。来源:力扣(LeetCode)链接:https://leetcode-cn

2021-05-02 12:47:02 538

原创 Java ArrayList部分源码研究

/*今天晚上看了会ArrayList源码,研究了一下主要的函数。主要有以下几个函数:add()remove()ensureCapacity()grow()hugeCapacity()fastremove() (和remove稍有区别)以及内部类Itr 实现了Iterator接口基本分析写在注释里了。*/public class ArrayList extends Abs

2018-01-12 22:17:28 195

原创 Java HashMap的put方法

实习半年,基本上在写scala和python。很少碰Java了,趁最近闲,补一波Java集合的东西。这篇主要分析HashMap的插入方法。之后再抽时间看下红黑树。可能出现的几种插入情况:1、初次插入。2、插入与任何结点不产生地址冲突。3、产生地址冲突,table数组下面结点以单链表形式存在,插入时直接挂在单链表最后。4、产生地址冲突,key值和之前结点一样。

2018-01-11 20:29:14 10482

原创 Spark shuffle相关总结

主要是http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-1/这篇文章的内容。这里个人总结了一下。宽依赖和窄依赖(wide dependency and narrow dependency)宽依赖指的是多个子RDD的Partition会依赖同一个父RDD的Partition。如red

2018-01-08 12:34:13 408

原创 Spark常用算子总结

Spark常用算子总结// Transformation算子 1、map算子 接收一个函数,对于RDD中的每一个元素执行此函数操作,结果作为返回值。 val rdd = sc.parallelize(Array(1, 2, 3, 4), 1) rdd.map(x => x*x).foreach(println) // 1 4 9 162、filter 接收一个函数,对于RDD中的每一个元

2017-12-30 18:38:29 4029

原创 驴妈妈景点爬取

驴妈妈景点爬取这次用BeautifulSoup4和requests来爬取驴妈妈上的景点信息。 主要用到的模块: - requests - BeautifulSoup - selenium爬虫思路1、获取城市名并构造所有城市地点的链接 get_all_cities_url() 3、爬取每个地点的第一页并获取最大页数 parse_one_page( (url, choice=0) ), 4、

2017-12-10 19:17:39 903

原创 重写scrapy中间件之RetryMiddleware

重写scrapy中间件RetryMiddleware在爬取得过程中难免会遇到各种错误,如timeout或者404。而且在用ip代理池时,不是所有的代理都是稳定的,所以对于失败的代理我们需要做一些处理,例如删除操作。而由于不稳定代理引起的请求我们需要重新发起。这时候就有必要重写RetryMiddleware,来实现一些自己想要的操作。理解RetryMiddleware源码重写RetryM

2017-11-14 22:29:36 12080 8

原创 bs4+phantomjs爬取安居客二手房信息

bs4+phantomjs爬取安居客二手房信息这是我的第一篇博客,希望通过养成写博客的习惯来督促自己学习。开发环境以及需要安装的模块 - Python3.6 - requests pip install requests - BeautifulSoup4 pip install BeautifulSoup4 - selenium pip install selenium - pha

2017-11-07 12:57:14 1137

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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