原创 《C++ Primer (5th Edition)》筆記-Part IV. Advanced Topics

注:本文以《C++ Primer(英文版)》(5th Edition)爲參考。 總共由四部分組成: 《C++ Primer (5th Edition)》筆記-Part I. The Basics 《C++ Primer (5th Edi

原创 《C++ Primer (5th Edition)》筆記-Part II . The C++ Library

注:本文以《C++ Primer(英文版)》(5th Edition)爲參考。 總共由四部分組成: 《C++ Primer (5th Edition)》筆記-Part I. The Basics 《C++ Primer (5th Edi

原创 《C++ Primer (5th Edition)》筆記-Part III . Tools For Class Authors

注:本文以《C++ Primer(英文版)》(5th Edition)爲參考。 總共由四部分組成: 《C++ Primer (5th Edition)》筆記-Part I. The Basics 《C++ Primer (5th Edi

原创 原地歸併

問題I: 傳統歸併排序需要O(n)的空間發雜度,但是否能夠實現原地歸併排序呢?即O(1)的空間複雜度。時間複雜度還是否是O(nlogn)? 對於這個問題,網上有很多資料,講的比較清楚的有下面這個文章: http://www.ahathi

原创 k個數相加和爲m的種數

問題I: 盒子中有n張卡片,上面的數字分別爲k1,k2,...,kn。你有4次機會,每抽一次,記錄下卡片上的數字,再將卡片放回盒子中。如果4個數字的和等於m。則你就贏得遊戲,否則就是輸。直覺上,贏的可能性太低了。請你給出程序,判斷是否有贏

原创 《C++ Primer (5th Edition)》筆記-Part I . The Basics

注:本文以《C++ Primer(英文版)》(5th Edition)爲參考。 總共由四部分組成: 《C++ Primer (5th Edition)》筆記-Part I. The Basics 《C++ Primer (5th Ed

原创 n個色子的點數

問題: n個色子,每個色子m面,每一面的值分別爲m-1。你將n個色子同時拋,落地後將所有朝上面的數字加起來,記爲sum。給定一個數字x,如果sum>x,則你贏。給定n,m,x,求你贏的概率。 分析: 何海濤的《劍指offer》中有類似的

原创 二叉樹的非遞歸遍歷

在實際應用中,二叉樹的遍歷一般都採用遞歸形式,簡潔、直觀。 但在筆試、面試中卻很喜歡考察非遞歸形式的寫法,下面將二叉樹的非遞歸遍歷實現總結如下: 節點定義: struct Node{ int val; Node *left, *ri

原创 KMP算法

在字符串的模式匹配中,KMP算法算的上經典。 在KMP算法中,next數組的計算是關鍵。 以下是幾種求解next數組的方法: 1)個人認爲最好理解的方法 void getNext(string str, vector<int>

原创 賽馬問題

問題: 有25匹馬,但只有5個跑道,即每場比賽只能五匹一起跑,沒有計時器,那麼最少需要舉行幾場比賽,才能確定前三甲呢? 分析: 首先, 將25匹馬分爲5組A、B、C、D、E組,每組跑一次,確定出每組的名次;需要跑5場。 假設: A1>A

原创 判斷字符串是否包含另一字符串的全排列

問題I:給定兩個字符串A和B,判斷A中是否包含由B中字符重新排列成的新字符串。例如:A=abcdef, B=ba,結果應該返回true。因爲ba的排列ab,是A的子串。本問題來自:微信公衆賬號“待字閨中”。 分析: 設A的長度爲n,B的

原创 LeetCode經典題目備忘I

1、有序單鏈錶轉平衡BST Convert Sorted List to Binary Search Tree           Oct 3'12 Given a singly linked list where elements ar

原创 求最長等差數列

以下內容轉自:微信:待字閨中 原題 給定未排序的數組,請給出方法找到最長的等差數列。 分析 題目描述比較簡單,但是有一個問題我們需要首先搞清楚:等差數列中的數字,是否要和原始數組中的順序一致。題目中,並沒有說明,這個

原创 類似楊輝三角問題——第n杯水

問題: 有一座金字塔,從上到下,第一層有一個杯子、第二層有兩個杯子,依次類推。對杯子進行編號,有如下的形狀:    1  2   3 4   5   6每個杯子的容量爲C升,從塔頂倒下L升水,當1號杯子滿了之後,會等量溢出到2號和3號杯子

原创 醜數

定義: 只包含因子2、3和5的數稱作醜數(Ugly Number)。 那麼醜數依次爲:1 2 4 5 8 10 16 20 25 32 40 50 64 80 100 125 128 160 200 250... 問題: 找出前n個醜數