原创 [LintCode] 顏色分類 Sort Colors

給定一個包含紅,白,藍且長度爲 n 的數組,將數組元素進行分類使相同顏色的元素相鄰,並按照紅、白、藍的順序進行排序。 我們可以使用整數 0,1 和 2 分別代表紅,白,藍。 注意事項 不能使用代碼庫中的排序函數來解決這個問題。

原创 415錯誤的一種解決方法

出現415錯誤的一種解決方法: 前端看ajax請求的contentType是否與後端一致 看發送的數據格式是否正確。 下例爲後端所需數據爲json格式,contentType爲application/json的ajax請求。

原创 [LintCode] 旋轉圖像 Rotate Image

給定一個N×N的二維矩陣表示圖像,90度順時針旋轉圖像。 樣例 給出一個矩形[[1,2],[3,4]],90度順時針旋轉後,返回[[3,1],[4,2]] 挑戰 能否在原地完成? You are given an n x

原创 [LintCode]搜索二維矩陣 II

寫出一個高效的算法來搜索m×n矩陣中的值,返回這個值出現的次數。 這個矩陣具有以下特性: 每行中的整數從左到右是排序的。 每一列的整數從上到下是排序的。 在每一行或每一列中沒有重複的整數。 樣例 考慮下列矩陣: [

原创 [LintCode] 字符串置換 String Permutation

給定兩個字符串,請設計一個方法來判定其中一個字符串是否爲另一個字符串的置換。 置換的意思是,通過改變順序可以使得兩個字符串相等。 樣例 “abc” 爲 “cba” 的置換。 “aabc” 不是 “abcc” 的置換。 Giv

原创 [LintCode] 前序遍歷和中序遍歷樹構造二叉樹 Construct Binary Tree from Preorder and Inorder Traversal

根據前序遍歷和中序遍歷樹構造二叉樹. 注意事項 你可以假設樹中不存在相同數值的節點. 樣例 給出中序遍歷:[1,2,3]和前序遍歷:[2,1,3]. 返回如下的樹: 2 / \ 1 3 Given preor

原创 [LintCode] 字符大小寫排序 Sort Letters by Case

給定一個只包含字母的字符串,按照先小寫字母后大寫字母的順序進行排序。 注意事項 小寫字母或者大寫字母他們之間不一定要保持在原始字符串中的相對位置。 樣例 給出”abAcD”,一個可能的答案爲”acbAD” 挑戰 在原地

原创 [LintCode] 用遞歸打印數字 Print Numbers by Recursion

用遞歸的方法找到從1到最大的N位整數。 你能夠用深度最多隻有 N 層的遞歸麼? 樣例 給出 N = 1, 返回[1,2,3,4,5,6,7,8,9]. 給出 N = 2, 返回[1,2,3,4,5,6,7,8,9,10,11,

原创 [LintCode] 最小差 The Smallest Difference

給定兩個整數數組(第一個是數組 A,第二個是數組 B),在數組 A 中取 A[i],數組 B 中取 B[j],A[i] 和 B[j]兩者的差越小越好(|A[i] - B[j]|)。返回最小差。 樣例 給定數組 A = [3,4

原创 [LintCode] 搜索旋轉排序數組 Search in Rotated Sorted Array

假設有一個排序的按未知的旋轉軸旋轉的數組(比如,0 1 2 4 5 6 7 可能成爲4 5 6 7 0 1 2)。給定一個目標值進行搜索,如果在數組中找到目標值返回數組中的索引位置,否則返回-1。 你可以假設數組中不存在重複的元

原创 [LintCode] 落單的數II Single Number II

給出3*n + 1 個的數字,除其中一個數字之外其他每個數字均出現三次,找到這個數字。 樣例 給出 [1,2,2,3,4,4,5,3],返回 1和5 挑戰 O(n)時間複雜度,O(1)的額外空間複雜度 Given 3*n

原创 [LintCode] 落單的數 III Single Number III

給出2*n + 2個的數字,除其中兩個數字之外其他每個數字均出現兩次,找到這兩個數字。 樣例 給出 [1,2,2,3,4,4,5,3],返回 1和5 挑戰 O(n)時間複雜度,O(1)的額外空間複雜度 Given 2*n

原创 [Lintcode] 搜索旋轉排序數組 II Search in Rotated Sorted Array II

跟進“搜索旋轉排序數組”,假如有重複元素又將如何? 是否會影響運行時間複雜度? 如何影響? 爲何會影響? 寫出一個函數判斷給定的目標值是否出現在數組中。 樣例 給出[3,4,4,5,7,0,1,2]和target=4,返

原创 [LintCode] 帶環鏈表 II Linked List Cycle II

給定一個鏈表,如果鏈表中存在環,則返回到鏈表中環的起始節點的值,如果沒有環,返回null。 樣例 給出 -21->10->4->5, tail connects to node index 1,返回10 挑戰 不使用額外的

原创 [LintCode] 跳躍遊戲

給出一個非負整數數組,你最初定位在數組的第一個位置。    數組中的每個元素代表你在那個位置可以跳躍的最大長度。     判斷你是否能到達數組的最後一個位置。 注意事項 這個問題有兩個方法,一個是貪心和 動態規劃。 貪心方