描述 給你一個(gè)01構(gòu)成的數(shù)組。請(qǐng)你找出最小翻轉(zhuǎn)步數(shù),使得數(shù)組滿足以下規(guī)則:1的后面可以是1或者0,但是0的后面必須是0。 輸入的數(shù)組長(zhǎng)度n <= 100000。 樣例 給出 ...
描述 給出一個(gè)字符串,找到最長(zhǎng)的重復(fù)子序列的長(zhǎng)度,并且這兩個(gè)子序列不能在相同位置有同一元素。比如:在兩個(gè)子序列中的第i個(gè)元素不能在原來(lái)的字符串中有相同的下標(biāo)。 樣例 給出st...
描述 給出三個(gè)字符串:s1、s2、s3,判斷s3是否由s1和s2交叉構(gòu)成。 樣例 比如 s1 = "aabcc" s2 = "dbbca" 挑戰(zhàn) 要求時(shí)間復(fù)雜度為O(n^2)...
描述 給出字符串S和字符串T,計(jì)算S的不同的子序列中T出現(xiàn)的個(gè)數(shù)。 子序列字符串是原始字符串通過刪除一些(或零個(gè))產(chǎn)生的一個(gè)新的字符串,并且對(duì)剩下的字符的相對(duì)位置沒有影響。(...
描述 給一 只含有正整數(shù) 的 非空 數(shù)組, 找到這個(gè)數(shù)組是否可以劃分為 兩個(gè) 元素和相等的子集。 所有數(shù)組元素不超過100.數(shù)組大小不超過200. 樣例 給一數(shù)組 [1, 5...
描述 給一個(gè)由 無(wú)重復(fù)的正整數(shù) 組成的集合,找出滿足任意兩個(gè)元素 (Si, Sj) 都有 Si % Sj = 0 或 Sj % Si = 0 成立的最大子集 如果有多種解集,...
描述 給出一棵二叉樹,返回其節(jié)點(diǎn)值的前、中、后序遍歷。 樣例 給出一棵二叉樹 {1,#,2,3}, 12/3返回 [3,2,1] 挑戰(zhàn) 你能使用非遞歸實(shí)現(xiàn)么? 代碼(遞歸) ...
I 描述 假設(shè)你是一個(gè)專業(yè)的竊賊,準(zhǔn)備沿著一條街打劫房屋。每個(gè)房子都存放著特定金額的錢。你面臨的唯一約束條件是:相鄰的房子裝著相互聯(lián)系的防盜系統(tǒng),且 當(dāng)相鄰的兩個(gè)房子同一天被...
描述 給定一個(gè)整數(shù)矩陣(其中,有 n 行, m 列),請(qǐng)找出矩陣中的最長(zhǎng)上升連續(xù)子序列。(最長(zhǎng)上升連續(xù)子序列可從任意行或任意列開始,向上/下/左/右任意方向移動(dòng))。 樣例 給...
描述 給出一棵二叉樹,尋找一條路徑使其路徑和最大,路徑可以在任一節(jié)點(diǎn)中開始和結(jié)束(路徑和為兩個(gè)節(jié)點(diǎn)之間所在路徑上的節(jié)點(diǎn)權(quán)值之和) 樣例 給出一棵二叉樹: 返回 6 代碼 仔細(xì)...
I 描述 給定一個(gè)二叉樹,找出所有路徑中各節(jié)點(diǎn)相加總和等于給定 目標(biāo)值 的路徑。 一個(gè)有效的路徑,指的是從根節(jié)點(diǎn)到葉節(jié)點(diǎn)的路徑。 樣例 給定一個(gè)二叉樹,和 目標(biāo)值 = 5: ...
I 描述 在n個(gè)物品中挑選若干物品裝入背包,最多能裝多滿?假設(shè)背包的大小為m,每個(gè)物品的大小為A[i] 你不可以將物品進(jìn)行切割。 樣例 如果有4個(gè)物品[2, 3, 5, 7]...
堆(最小堆) I 堆化操作 遍歷根節(jié)點(diǎn),并且每個(gè)根節(jié)點(diǎn)都做到下沉。 II 出堆 放出堆頂?shù)脑兀?把最后一個(gè)元素放到堆頂來(lái)下沉。 III 進(jìn)堆 放入某元素到堆末尾,然后用這末...
石子歸并 有一個(gè)石子歸并的游戲。最開始的時(shí)候,有n堆石子排成一列,目標(biāo)是要將所有的石子合并成一堆。合并規(guī)則如下: 每一次可以合并相鄰位置的兩堆石子每次合并的代價(jià)為所合并的兩堆...
思路概述 I、非常常規(guī)的動(dòng)態(tài)規(guī)劃問題,遞推公式就是dp[i] = max(nums[i], nums[i] + dp[i-1]), 在當(dāng)前i位置判斷是否舍棄i及i前面的加和結(jié)...
思路概述 I、只許購(gòu)買一次股票。遍歷所有時(shí)間的股票價(jià)格,以當(dāng)前股票價(jià)格之前出現(xiàn)過的最低價(jià)作為買入價(jià),并計(jì)算出當(dāng)天價(jià)格出售的收益,與曾經(jīng)的最大收益對(duì)比,遍歷完即可的得到最大可能...
最長(zhǎng)上升子序列給定一個(gè)整數(shù)序列,找到最長(zhǎng)上升子序列(LIS),返回LIS的長(zhǎng)度。 樣例給出 [5,4,1,2,3],LIS 是 [1,2,3],返回 3給出 [4,2,4,5...