
剑指offer
漂洋过海的油条
用户名忽略哈!
我是一个如花似玉,朝着大神方向努力奋斗的小仙女!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
剑指offer——变态跳台阶(2)Python实现
题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 考点:递归链接一。 分析:f(n)为当为n阶台阶时,有多少种跳法。当有1个台阶时,只有一种跳法。f(1)=1 当有2个台阶时,有两种跳法,(1,1)或(2)。所以f(2)=f(2-1)+f(2-2)=2,这里f(2-1)为第一次跳一个台阶后,剩下的情况是f(1...原创 2018-11-06 13:46:27 · 325 阅读 · 0 评论 -
剑指offer——斐波那契数列(3)Python实现
题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39考点:递归和循环分析:斐波那契数列指的是这样一个数列: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,4636...原创 2018-11-06 16:38:09 · 267 阅读 · 0 评论 -
剑指offer——跳台阶(4)Python实现
题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。知识点:递归和循环分析:只有一个台阶时,有一种跳法。f(1)=1 有两个台阶时,有(1,1)、(2)。两种跳法。f(2)=2 有三个台阶时,有(1,1,1)、(1,2)、(2,1)三种跳法。f(3)=3 有四个台阶时,有(1,1,1,1)、(1,2,1)、(...原创 2018-11-06 18:05:40 · 196 阅读 · 0 评论 -
剑指offer——整数中1出现的次数(7)Python实现(**********)
题目:求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)。分析:设N = abcde ,其中abcde分别为十进制中各位上的数字...原创 2018-11-09 13:21:55 · 1134 阅读 · 1 评论 -
剑指offer——矩形覆盖(5)Python实现
题目:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?考点:递归和循环分析:当 n=1时,有一种覆盖方法。f(1)=1 当 n=2时,有两种覆盖方法。f(2)=2 当n=3时, 分为两种情况: 第一次用一个矩形竖着覆盖(左图蓝色),则剩下共有f(n-1)种方法,即f(2) 种方法; 第一次...原创 2018-11-06 20:45:05 · 365 阅读 · 0 评论 -
剑指offer——连续子数组的最大和(6)Python实现
题目:HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的和...原创 2018-11-07 22:10:26 · 195 阅读 · 0 评论 -
剑指offer——数组的旋转(1)Python实现
题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 考点:二分查找 链接一、链接二。 分析:旋转之后的数组实际上可以划分成两个有序的子数组:前面子数组...原创 2018-11-05 17:46:13 · 420 阅读 · 0 评论