自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode233 数字1的个数

题目:思路:《编程之美》上这样说:设N = abcde ,其中abcde分别为十进制中各位上的数字。如果要计算百位上1出现的次数,它要受到3方面的影响:百位上的数字,百位以下(低位)的数字,百位以上(高位)的数字。如果百位上数字为0,百位上可能出现1的次数由更高位决定。比如:12013,则可以知道百位出现1的情况可能是:100199,11001199,21002199,,…,11100...

2019-02-23 21:23:18 404

原创 Day07 DP实战:背包问题+LeetCode132

0-1背包问题描述:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。问题的名称来源于如何选择最合适的物品放置于给定背包中。思路:动态规划,对每一件物品遍历背包容量,当背包可容纳值大于等于当前物品,与之前已放进去的物品所得价值进行对比,考虑是否需要置换。递推公式:递推公式来自参考:https://blog.csdn.net/Rubik_...

2019-02-01 21:48:33 310

原创 Day04 二叉树+LeetCode98、102、107

二叉树1、二叉树是一颗只有两个结点的数。如下图所示:2、特点:1)每个结点最多有两颗子树,所以二叉树中不存在度大于2的结点。2)左子树和右子树是有顺序的,次序不能任意颠倒。3)即使树中某结点只有一棵子树,也要区分它是左子树还是右子树。3、性质1)在二叉树的第i层上最多有2i-1 个节点 。(i>=1)2)二叉树中如果深度为k,那么最多有2k-1个节点。(k&amp

2019-01-31 22:01:37 101

原创 Day06 递归算法实战 LeetCode17+46

LeetCode17 电话号码的组合思路:要求n个数字对应字母的组合,如果前n-1个数字的组合以及组好(假设有x组),那么n个数字的组合就是这 x组,每组分别再加上第n个数字对应的字母即可。同理,要求n-1个数字对应的字母组合,如果前n-2个数字对应的字母组合已求好(假设有y组),那么n-1个数字对应的字母组合即求得的y组每组再加上第n-1个数对应的字母即可。…直至将原问题分解到只剩下...

2019-01-31 21:40:44 188

原创 Day05 递归+动态规划

递归递归,顾名思义,有去(递去)有来(归来)。“有去”是指:递归问题必须可以分解为若干个规模较小,与原问题形式相同的子问题,这些子问题可以用相同的解题思路来解决,就像上面例子中的钥匙可以打开后面所有门上的锁一样;“有回”是指 : 这些问题的演化过程是一个从大到小,由近及远的过程,并且会有一个明确的终点(临界点),一旦到达了这个临界点,就不用再往更小、更远的地方走下去。最后,从这个临界点开始,原...

2019-01-30 21:54:03 83

原创 Day03 堆与对列+LeetCode239

对列栈和对列都是动态集合,栈是后进先出(LIFO),对列是先进先出(FIFO)堆堆是一种完全二叉树,分为大根堆和小根堆。具体参照(堆排序的Python实现(附详细过程图和讲解))LeetCode239 滑动窗口最大值刚开始拿到题目,感觉用堆用双向对列都可以做,但是又具体写不出来,于是搜集大佬们的解法,发现我只是有这个想法,却不知道怎么解决,看大佬们的思路也特别费脑,尤其是双向对列的解法...

2019-01-28 20:31:38 171

原创 Day02 链表+LeetCode142

链表今天重温了下链表知识。链表是一种链式存储法,链表中的顺序是对象中指针所决定的,因此链表中相邻的元素在存储空间内不一定相邻,但插入删除操作相对数组方便。下面简单介绍一下双向链表:如图所示,双链表L的每个元素都是一个对象,每个对象包含一个关键字域和两个指针域:next和prev。next[x]指向链表中x的后继元素,prev[x]指向链表x的前驱元素。如果prev[x]=NIL,则元素x没有前...

2019-01-27 20:37:05 117

原创 哈希表Python

哈希表原理哈希表的原理很简单:哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。记录的存储位置=f(关键字)这里的对应关系f称为散列函数,又称为哈希(Hash函数),采用散列技术将记录存储在一块连续的存储空间中...

2019-01-27 00:30:48 1035

原创 LeetCode第7题——整数翻转(另附Python 切片(Slice)笔记)

题目给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[-2^31 231-1] 。请根据这个假设,如果反转后整数溢出那么就返回 0。思路思路一:在Pytho...

2018-12-12 23:24:49 472

原创 LeetCode第2题——两数相加

题目给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&g..

2018-12-09 00:14:24 377

原创 LeetCode第一题——两数之和

LeetCode第一题——两数之和Mark写在前面题目思路写在后面Mark写在前面Enmm…今天终于鼓起勇气在LeetCode上刷了第一道题,嗯嗯…发现并没有自己想象的那么难…第一次在CSCD上写东西(之前都用的笔记本手写…)还是感谢群主大大给的压力,让我迈出了第一步废话不多说了,直接上笔记吧题目思路看到这个题目第一反应,就是直接找呗,理了下思路,感觉和冒泡排序法的思路很像。于是凭...

2018-12-05 23:53:24 148

空空如也

空空如也

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

TA关注的人

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