原创 劍指Offer第二版面試題10(java實現)

題目描述        大家都知道斐波那契數列,現在要求輸入一個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項爲0)。n<=39 解題思路       公式:          f(n) = n, n <= 1          

原创 劍指Offer第二版面試題6(java實現)

題目描述        輸入一個鏈表,按鏈表值從尾到頭的順序返回一個ArrayList。 解題思路         一種方法是利用棧來實現;        另外一種方法是利用三個指針把鏈表反轉,關鍵是 r 指針保存斷開的節點。 代碼實現

原创 劍指Offer第二版面試題16(java實現)

題目描述       給定一個double類型的浮點數base和int類型的整數exponent。求base的exponent次方。 解題思路 指數爲負時,可以先對指數求絕對值,算出次方的結果後再取倒數 當底數爲0,指數爲負時,會出現對0

原创 劍指Offer第二版面試題12(java實現)

題目描述        請設計一個函數,用來判斷在一個矩陣中是否存在一條包含某字符串所有字符的路徑。路徑可以從矩陣中的任意一個格子開始,每一步可以在矩陣中向左,向右,向上,向下移動一個格子。如果一條路徑經過了矩陣中的某一個格子,則之後不能

原创 劍指Offer第二版面試題15(java實現)

題目描述        輸入一個整數,輸出該數二進制表示中1的個數。其中負數用補碼錶示。 解題思路       如果一個整數不爲0,那麼這個整數至少有一位是1。如果我們把這個整數減1,那麼原來處在整數最右邊的1就會變爲0,原來在1後面的所

原创 劍指Offer第二版面試題11(java實現)

題目描述         把一個數組最開始的若干個元素搬到數組的末尾,我們稱之爲數組的旋轉。 輸入一個非減排序的數組的一個旋轉,輸出旋轉數組的最小元素。 例如數組{3,4,5,1,2}爲{1,2,3,4,5}的一個旋轉,該數組的最小值爲1

原创 劍指Offer第二版面試題13(java實現)

題目描述         地上有一個m行和n列的方格。一個機器人從座標0,0的格子開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能進入行座標和列座標的數位之和大於k的格子。 例如,當k爲18時,機器人能夠進入方格(35,37

原创 利用Requests + 正則表達式爬取貓眼電影

代碼實現 import requests from requests.exceptions import RequestException import re import json from multiprocessing impo

原创 劍指Offer第二版面試題4(java實現)

題目描述         在一個二維數組中(每個一維數組的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數 解題思路      

原创 劍指Offer第二版面試題5(java實現)

題目描述       請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串爲We Are Happy.則經過替換之後的字符串爲We%20Are%20Happy。 解題思路        很簡單,從後往前遍歷就對了。 代

原创 劍指Offer第二版面試題8(java實現)

題目描述         給定一個二叉樹和其中的一個結點,請找出中序遍歷順序的下一個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指針。 解題思路 中序遍歷:左 -> 根 -> 右 分三種情況: 如果當前節點爲空,

原创 劍指Offer第二版面試題3(java實現)

題目描述          在一個長度爲n的數組裏的所有數字都在0到n-1的範圍內。 數組中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出數組中任意一個重複的數字。 例如,如果輸入長度爲7的數組{2,3,1

原创 劍指Offer第二版面試題7(java實現)

題目描述         輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列{1,2,4,7,3,5,6,8}和中序遍歷序列{4,7,2,1,5,3,8,6

原创 劍指Offer第二版面試題9(java實現)

題目描述          用兩個棧來實現一個隊列,完成隊列的Push和Pop操作。 隊列中的元素爲int類型。 解題思路      兩個棧 stack1 和 stack2: push 動作都在 stack1 中進行, pop 動作在 s

原创 第七課:爬蟲基本原理

什麼是爬蟲? 請求網站並提取數據的自動化程序   爬蟲基本流程 發起請求:通過HTTP庫向目標站點發起請求,即發送一個Request,請求可以包含額外的headers等信息,等待服務器響應。 獲取響應內容:如果服務器能正常響應,會得