原创 【LintCode】637. 檢查縮寫字(熟悉字符串)

描述 中文English 給定一個非空字符串 word 和縮寫 abbr,返回字符串是否可以和給定的縮寫匹配。 比如一個 “word” 的字符串僅包含以下有效縮寫: ["word", "1ord", "w1rd", "wo1d", "w

原创 【LintCode】777. 完全平方數(二分法)

描述 中文English 給出一個正整數 num,寫一個函數,要求當這個當num爲完全平方數時函數返回True,否則返回False 樣例 樣例1: 輸入: num = 16 輸出: True 解釋: sqrt(16) = 4 樣例2:

原创 【LintCode】869. 找出一個數組的錯亂(動態規劃)

動態規劃 設定狀態: f[i] 表示含i個元素的排列能生成的錯亂的數量 狀態轉移方程: f[i] = (i - 1) * (f[i-1] + f[i-2]) 邊界: f[1] = 0, f[2] = 1 對於 f[n] 的計算, 假定把

原创 【LintCode】463.整數排序-各種排序解析

描述 中文English 給一組整數,按照升序排序,使用選擇排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。 您在真實的面試中是否遇到過這個題?  是 題目糾錯 樣例 樣例 1: 輸入: [3, 2, 1, 4, 5]

原创 二分查找【LeetCode】

當數組有序,可以考慮二分查找,栗子: public int search(int key, int[] array) { int left = 0; int right = array.length - 1;