自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 摊还分析,核算法与势能法

为什么我们需要摊还分析上篇文章我们提到了算法的时间复杂度分析,给定输入规模,我们分析出算法的耗时,但是这样够了吗?有时输入规模不是一个静态的值,可能输入是一系列操作,比如在这棵树里先插入结点,再做一个查找,再删除最小值,再与另一棵树合并。(插入,查找,删除最小值,合并)就是一个输入的操作序列。为了对这类操作序列耗时进行分析,我们引入了摊还分析:n个操作的总耗时除以n。看到这儿你可能会想,这...

2018-12-19 00:54:21 2932 2

原创 时间复杂度的定义,记号以及几种计算方法

时间复杂度在关心些什么如果接触过算法,那么对于算法的时间复杂度分析一定不陌生,因为时间复杂度是算法优劣的一个重要评价标准。对于一个算法,我们不光关心它在某个规模输入的情况下耗时多少,我们更关心的是,当输入规模疯狂增长的时候,算法耗时增加多少,是按线性形式增加的?指数增加的?对数形式增加的?比如当你的算法接收的输入规模从k个数变到nk个数时,你的耗时是增加了n倍(线性速度增加)?还是增加了n2倍...

2018-12-17 12:46:40 8265 2

原创 二叉树的中序遍历,每层遍历,以及Z字形遍历

leetcode中,二叉树也是一块重点,对于树结构衍生出的问题,一般用递归的方法会比较多二叉树的中序遍历对于二叉树的前序遍历,就是左-根-右这种遍历顺序。有递归和非递归写法:非递归就用栈来实现 res, stack = [], [] while True: while root: stack.append...

2018-12-02 11:49:26 745

原创 2 sum, 3 sum, 4sum以及python collections.Counter

最近的文章都是有关面试最常出到的100题许多面试好像都喜欢问这三兄弟。2 sum给个列表,和target,返回列表中两个数加起来等于这个target的index举例:Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].新建一个空字典,遍历一边列表,如果...

2018-12-01 07:27:14 865

空空如也

空空如也

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

TA关注的人

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