題意:給定兩個數(shù)組,boxes記錄box的高和warehouse記錄warehouse的高,問warehouse中最多放幾個box 思路: 把box排序 創(chuàng)建一個stack,...
題意:給定兩個數(shù)組,boxes記錄box的高和warehouse記錄warehouse的高,問warehouse中最多放幾個box 思路: 把box排序 創(chuàng)建一個stack,...
題意:給定一個二維數(shù)組,行列都拍好序,找出target是否存在 思路:從數(shù)組的右上角開始查找 右上角的數(shù)比target大,那么向下移動一行 右上角的數(shù)比target小,那么向...
題意:給一個數(shù)組,和一個k,找出所有的k個數(shù)的組合 思路:遍歷數(shù)組,利用DFS找出所有結(jié)果,具體見代碼 思想:DFS 復(fù)雜度:時間O(n^2),空間O(n)
題意:給定一個二叉搜索樹的現(xiàn)需遍歷,重構(gòu)二叉搜索樹 思路:先跟遍歷數(shù)組,每次查看當前遍歷到的節(jié)點是否在max和min之內(nèi),如果不在,返回null,如果在,取當前節(jié)點為root...
題意:給定一個字符串,返回去除重復(fù)后,安字典順序最大的字符串 思路:具體見代碼注釋 思想:雙向隊列 復(fù)雜度:時間O(n),空間O(n)
題意:給一個字符串,一個字符,最少能用字符串中的幾個substring拼出字符 思路:dfs遍歷找出最小的合法值 思想:dfs 復(fù)雜度:時間O(n*n),空間O(n)
題意:給一組機票,重新構(gòu)建行程 思路: 用map記錄每一個出發(fā)的城市和它能到達的城市,并用pq來給到達的城市從小到大排序 DFS,每次獲取當前城市能到達的城市 如果它能到達的...
題意:給一組課程,里邊有修課的先后順序,查看能否把所有的課修完 思路: 把課程想成有向圖,先修的課是出度,后修的課是入度 用map記錄每一個節(jié)點連接的出度節(jié)點們 用in記錄每...
題意:根據(jù)中序和后序遍歷構(gòu)造二叉樹 思路: 把中序遍歷的每一個數(shù)字和對應(yīng)的index放到map中 DFS,遍歷重構(gòu)樹 每次DFS,傳入中序和后序的開始和結(jié)束index, 取后...
題意:給定一個墻,讓花一條線穿過的墻數(shù)最小 思路:遍歷每一行,用hashmap統(tǒng)計每一列,有多少最后一格磚,比如{{1,1, 2},{2,2}}那么第1列有1格磚,第二列有兩...
題意:把整數(shù)轉(zhuǎn)換成十六進制數(shù) 思路:把數(shù)字和15于8次,每次把于出來的十六進制字符加入結(jié)果,并把temp右移4位,如果中間遇到temp==0break,最后把字符串翻轉(zhuǎn)并轉(zhuǎn)換...
題意:給一個亂序的鏈表,把它排序輸出 思路: 找出二分鏈表的節(jié)點 對每一半進行遞歸排序 把拍好序的兩半merge到一個,并返回 思想:歸并排序 復(fù)雜度:時間O(nlgn),空...
題意:給定一個數(shù)組和一個滑動窗口,返回每一個滑動窗口的中位數(shù) 思路:遍歷數(shù)組 維護一個最小的treeset,和一個最大的treeset,記錄當前節(jié)點的index 每次根據(jù)奇偶...
題意:給定一組氣球浮動的坐標范圍,找出做少的箭來射穿所有氣球 思路: 把氣球安x[0]從小到大排序 然后遍歷數(shù)組,每次當左邊界小于當前右邊界,那么更新右邊界,continue...
題意:找出二叉樹中所有距離為k的節(jié)點 思路: 先跟遍歷樹,把每一個節(jié)點的parent節(jié)點找到,并計算他們到root的距離 遍歷target的子節(jié)點,查看,target到roo...
題意:給定一個樹,返回具有最深節(jié)點的最小子樹 思路:后跟遍歷樹 如果節(jié)點為null,返回null 獲取左右子樹的最大深度 如果左右子樹相等,且深度大于等于當前的最大深度,那么...
題意:后跟遍歷整個樹 思路: 用stack把頭節(jié)點放入其中 遍歷stack,每次pop出頭節(jié)點 如果頭節(jié)點不為空,把頭節(jié)點的值加入結(jié)果,并把左子樹和右子樹的節(jié)點加入其中 遍歷...
題意:給一個樹,構(gòu)建它的每一個節(jié)點的next節(jié)點 思路:按層遍歷樹, 每次遍歷到一個節(jié)點cur時,判斷它的pre節(jié)點是否為空,如果不為空,那么pre.next = cur, ...
題意:給定一個字符串,重構(gòu)字符串,讓相同的字符,不相鄰 思路:利用奇偶性,具體見代碼注釋 思想:字符規(guī)律 復(fù)雜度:時間O(n),空間O(n)
題意:給定一個二維數(shù)組,找出從top left到bottom right的所有路徑 思路:動態(tài)規(guī)劃,遍歷每一行,dp[i]表示某一行的節(jié)點i的所有可能路徑總數(shù),遞推公式dp[...