劍指offer刷題之矩形覆蓋
題目描述
我們可以用2*1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法?
# -*- coding:utf-8 -*-
class Solution:
def rectCover(self, number):
# write code here
res = [0,1,2]
while len(res) <= number:
res.append(res[-1]+res[-2])
return res[number]
相關推薦
劍指offer刷題之矩形覆蓋
題目描述 我們可以用2*1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法? # -*- coding:utf-8 -*- class Solution: def rectCover(self,
劍指offer刷題之反轉連結串列
題目描述 輸入一個連結串列,反轉連結串列後,輸出新連結串列的表頭。 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): #  
劍指offer刷題之連結串列中倒數第k個結點
題目描述 輸入一個連結串列,輸出該連結串列中倒數第k個結點。 # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # s
劍指offer刷題之調整陣列順序使奇數位於偶數前面
題目描述 輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分,所有的偶數位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。 # -*- coding:utf-8 -*- from collections impo
劍指offer刷題之二進位制中1的個數
題目描述 輸入一個整數,輸出該數二進位制表示中1的個數。其中負數用補碼錶示。 # -*- coding:utf-8 -*- class Solution: def NumberOf1(self, n):  
劍指offer刷題之變態跳臺階
題目描述 一隻青蛙一次可以跳上1級臺階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上一個n級的臺階總共有多少種跳法。 # -*- coding:utf-8 -*- class Solution: def jumpFloorII(self, number
劍指offer刷題之跳臺階
題目描述 一隻青蛙一次可以跳上1級臺階,也可以跳上2級。求該青蛙跳上一個n級的臺階總共有多少種跳法(先後次序不同算不同的結果)。 # -*- coding:utf-8 -*- class Solution: def jumpFloor(self, nu
劍指offer刷題之替換空格
請實現一個函式,將一個字串中的每個空格替換成“%20”。例如,當字串為We Are Happy.則經過替換之後的字串為We%20Are%20Happy。 class Solution: # s 源字串 def replaceSpace(se
劍指offer刷題之二維陣列中的查詢
在一個二維陣列中(每個一維陣列的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函式,輸入這樣的一個二維陣列和一個整數,判斷陣列中是否含有該整數 class Solution: # array 二維列表  
劍指offer刷題之用兩個棧實現佇列
題目描述 用兩個棧來實現一個佇列,完成佇列的Push和Pop操作。 佇列中的元素為int型別。 # -*- coding:utf-8 -*- class Solution: def __init__(self):
劍指offer刷題之從尾到頭列印連結串列
輸入一個連結串列,按連結串列值從尾到頭的順序返回一個ArrayList。 一般方法: # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # &nb
劍指offer刷題-矩形覆蓋問題
1. 跳臺階 我們可以用2 * 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 * 1的小矩形無重疊地覆蓋一個2 * n的大矩形,總共有多少種方法? 題目分析 我們從簡單的開始看。 如上圖1,可以先放兩個疊著的,再放一個豎著的, 或者 可以先
【LeetCode & 劍指offer刷題】樹題1:二叉樹的遍歷總結(前序、中序、後序、層序、 之字形層序、垂直遍歷)
【LeetCode & 劍指offer 刷題筆記】目錄(持續更新中...) 二叉樹的遍歷總結 (前序、中序、後序、層序、 之字形層序、垂直遍歷) 三種遞迴遍歷 // 前序遍歷(根-左-右)
劍指Offer 刷題筆記(20/66)——JAVA
文章目錄 11.二進位制中1的個數 12.數值的整數次方 13.調整陣列順序使奇數位於偶數前面 14.連結串列中倒數第k個節點 15.反轉連結串列 16.合併兩個排序的連結串列 17.樹的
劍指offer刷題記錄11——二進位制中1的個數
題目描述 輸入一個整數,輸出該數二進位制表示中1的個數。其中負數用補碼錶示。 將輸入的整數分成0,正,負三種情況分別討論。正數和0不必多說,當負數時,要將反碼的32位用0補全,補碼是取反加一,再求1的個數,所以可以不必求補碼,直接轉化成反碼加0,1和0的代數關係進行調
劍指offer刷題記錄14——連結串列中倒數第k個結點
題目描述 輸入一個連結串列,輸出該連結串列中倒數第k個結點。 想到利用雙指標標記頭部,移動第二個指標直到距離為k - 1,再同時移動兩個指標,當第二個指標指向尾部,第一個指標則指向倒數第k個結點。 解法一: public class Solution {
劍指offer刷題-跳臺階
1. 跳臺階 題目描述:一隻青蛙一次可以跳上1級臺階,也可以跳上2級。求該青蛙跳上一個n級的臺階總共有多少種跳法(先後次序不同算不同的結果)。 題目分析 結果數滿足一個公式,從簡單的開始推導結果。
劍指offer刷題-數二進位制表示中1的個數
題目描述 時間限制:1秒 空間限制:32768K 熱度指數:294626 輸入一個整數,輸出該數二進位制表示中1的個數。其中負數用補碼錶示。 當n>0時,就容易處理了 s = '%s' %
劍指offer刷題-反轉連結串列
時間限制:1秒 空間限制:32768K 熱度指數:358600 本題知識點: 連結串列 題目描述 輸入一個連結串列,反轉連結串列後,輸出新連結串列的表頭。 問題分析 新建一個節點,不斷地將原來的連結
劍指Offer刷題筆記(java實現)_26.樹的子結構
題目描述: 輸入兩棵二叉樹A,B,判斷B是不是A的子結構。(ps:我們約定空樹不是任意一個樹的子結構)。 其實思路很簡單:我們的演算法就通過比較即可,因為是樹的遍歷比較所以第一時間想到了遞迴 先假設母樹為A,子樹為B (1)我們先去判斷節點的第一個點的值是