原创 【LeetCode每日一題】島嶼的最大面積

給定一個包含了一些 0 和 1的非空二維數組 grid , 一個 島嶼 是由四個方向 (水平或垂直) 的 1 (代表土地) 構成的組合。你可以假設二維矩陣的四個邊緣都被水包圍着。 找到給定的二維數組中最大的島嶼面積。(如果沒有島嶼

原创 【LeetCode每日一題】字符串的最大公因子

對於字符串 S 和 T,只有在 S = T + … + T(T 與自身連接 1 次或多次)時,我們才認定 “T 能除盡 S”。 返回最長字符串 X,要求滿足 X 能除盡 str1 且 X 能除盡 str2。 示例 1: 輸入:s

原创 【LeetCode每日一題】將數組分成和相等的三個部分

給你一個整數數組 A,只有可以將其劃分爲三個和相等的非空部分時才返回 true,否則返回 false。 形式上,如果可以找出索引 i+1 < j 且滿足 (A[0] + A[1] + … + A[i] == A[i+1] + A[

原创 【LeetCode每日一題】買賣股票的最佳時機

給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。 如果你最多隻允許完成一筆交易(即買入和賣出一支股票),設計一個算法來計算你所能獲取的最大利潤。 注意你不能在買入股票前賣出股票。 示例 1: 輸入: [7,1,5

原创 【多線程-LeetCode】*哲學家進餐

5 個沉默寡言的哲學家圍坐在圓桌前,每人面前一盤意麪。叉子放在哲學家之間的桌面上。(5 個哲學家,5 根叉子) 所有的哲學家都只會在思考和進餐兩種行爲間交替。哲學家只有同時拿到左邊和右邊的叉子才能吃到面,而同一根叉子在同一時間只能

原创 【多線程-LeetCode】交替打印字符串

編寫一個可以從 1 到 n 輸出代表這個數字的字符串的程序,但是: 如果這個數字可以被 3 整除,輸出 “fizz”。 如果這個數字可以被 5 整除,輸出 “buzz”。 如果這個數字可以同時被 3 和 5 整除,輸出 “fizz

原创 【多線程-LeetCode】打印零與奇偶數

假設有這麼一個類: class ZeroEvenOdd { public ZeroEvenOdd(int n) { ... } // 構造函數 public void zero(printNumber) { ..

原创 【多線程-LeetCode】交替打印FooBar

我們提供一個類: class FooBar { public void foo() { for (int i = 0; i < n; i++) { print("foo"); } } pu

原创 【簡單LeetCode】數組的相對排序

給你兩個數組,arr1 和 arr2, arr2 中的元素各不相同 arr2 中的每個元素都出現在 arr1 中 對 arr1 中的元素進行排序,使 arr1 中項的相對順序和 arr2 中的相對順序相同。未在 arr2 中出現過

原创 【多線程-LeetCode】H2O 生成

現在有兩種線程,氫 oxygen 和氧 hydrogen,你的目標是組織這兩種線程來產生水分子。 存在一個屏障(barrier)使得每個線程必須等候直到一個完整水分子能夠被產生出來。 氫和氧線程會被分別給予 releaseHydr

原创 2019-10-28 奇偶鏈表

給定一個單鏈表,把所有的奇數節點和偶數節點分別排在一起。請注意,這裏的奇數節點和偶數節點指的是節點編號的奇偶性,而不是節點的值的奇偶性。 請嘗試使用原地算法完成。你的算法的空間複雜度應爲 O(1),時間複雜度應爲 O(nodes)

原创 LeetCode. 四數相加 II

給定四個包含整數的數組列表 A , B , C , D ,計算有多少個元組 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。 爲了使問題簡單化,所有的 A, B, C, D 具有相同的

原创 LeetCode. 搜索旋轉排序數組

假設按照升序排序的數組在預先未知的某個點上進行了旋轉。 ( 例如,數組 [0,1,2,4,5,6,7] 可能變爲 [4,5,6,7,0,1,2] )。 搜索一個給定的目標值,如果數組中存在這個目標值,則返回它的索引,否則返回 -1

原创 LeetCode. 第一個錯誤的版本

你是產品經理,目前正在帶領一個團隊開發新的產品。不幸的是,你的產品的最新版本沒有通過質量檢測。由於每個版本都是基於之前的版本開發的,所以錯誤的版本之後的所有版本都是錯的。 假設你有 n 個版本 [1, 2, …, n],你想找出導

原创 [銀河麒麟]qtchooser加入新的qmake版本!

環境:銀河麒麟 kylin 4.4.58-20170818.kylin.desktop-generic, aarch64, aarch64, aarch64, GNU/Linux 本機是自帶Qt 4.8.7和Qt 5.6.1雙版本