原创 leetcode 75. 顏色分類 擊敗100%

給定一個包含紅色、白色和藍色,一共 n 個元素的數組,原地對它們進行排序,使得相同顏色的元素相鄰,並按照紅色、白色、藍色順序排列。 此題中,我們使用整數 0、 1 和 2 分別表示紅色、白色和藍色。 注意: 不能使用代碼庫中的排序

原创 leetcode 61. 旋轉鏈表 擊敗99.98%

給定一個鏈表,旋轉鏈表,將鏈表每個節點向右移動 k 個位置,其中 k 是非負數。 示例 1: 輸入: 1->2->3->4->5->NULL, k = 2 輸出: 4->5->1->2->3->NULL 解釋: 向右旋轉 1 步

原创 leetcode 73. 矩陣置零 擊敗100%

給定一個 m x n 的矩陣,如果一個元素爲 0,則將其所在行和列的所有元素都設爲 0。請使用原地算法。 示例 1: 輸入: [ [1,1,1], [1,0,1], [1,1,1] ] 輸出: [ [1,0,1], [0,0,0]

原创 leetcode 60. 第k個排列 擊敗100%

給出集合 [1,2,3,…,n],其所有元素共有 n! 種排列。 按大小順序列出所有排列情況,並一一標記,當 n = 3 時, 所有排列如下: “123” “132” “213” “231” “312” “321” 給定 n 和

原创 dubbo註冊jvm關閉鉤子時存在的問題

dubbo在停機時通過註冊jvm關閉鉤子來執行自身優雅停機工作,但當dubbo與spring一同運行時,由於spring也通過jvm關閉鉤子註冊: public abstract class AbstractApplication

原创 dubbo 優雅停機原理

dubbo優雅停機的實現,首先主要依賴於jvm的ShutdownHook鉤子函數,例如dubbo 2.5.x版本,在AbstractConfig中定義了: static { Runtime.getRuntime()

原创 leetcode 394. 字符串解碼

給定一個經過編碼的字符串,返回它解碼後的字符串。 編碼規則爲: k[encoded_string],表示其中方括號內部的 encoded_string 正好重複 k 次。注意 k 保證爲正整數。 你可以認爲輸入字符串總是有效的;

原创 leetcde 17. 電話號碼的字母組合

每個數字對應多個字母,要窮盡所有的組合可能,採用多叉樹的結構,每遍歷一個數字,在多叉樹中就多了一層,即在當前的所有葉子節點下面再加上新數字對應的所有字母,形成新的多叉葉子節點。 將多叉樹建立出來之後,再通過深度優先遍歷整

原创 leetcode 54. 螺旋矩陣

給定一個包含 m x n 個元素的矩陣(m 行, n 列),請按照順時針螺旋順序,返回矩陣中的所有元素。 示例 1: 輸入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] 輸出: [1,2,3

原创 線程池execute源碼

/** * Executes the given task sometime in the future. The task * may execute in a new thread or in an ex

原创 線程池awaitTermination源碼

public boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException { //先轉換爲納

原创 leetcode 11. 盛最多水的容器

給定 n 個非負整數 a1,a2,…,an,每個數代表座標中的一個點 (i, ai) 。在座標內畫 n 條垂直線,垂直線 i 的兩個端點分別爲 (i, ai) 和 (i, 0)。找出其中的兩條線,使得它們與 x 軸共同構成的容器可

原创 線程池shutdownNow源碼

/** * Attempts to stop all actively executing tasks, halts the * processing of waiting tasks, and return

原创 leetcode 215 數組中的第K個最大元素

在未排序的數組中找到第 k 個最大的元素。請注意,你需要找的是數組排序後的第 k 個最大的元素,而不是第 k 個不同的元素。 示例 1: 輸入: [3,2,1,5,6,4] 和 k = 2 輸出: 5 示例 2: 輸入: [3,

原创 線程池shutdown源碼

/** * Initiates an orderly shutdown in which previously submitted * tasks are executed, but no new tasks will b