原创 Google AudioSet-谷歌語音數據集如何解析
Google Audio Set是谷歌提供的語音數據集,對於語音相關的AI學習和研究有着至關重要的作用 因爲身處長城之內,故從谷歌官網搬運該數據集的介紹、下載,及解析格式 數據集簡介 AudioSet由632個音頻事件類的擴展本體和從Y
原创 Fail-fast
具體來說就是,當創建了iterator後,如果對list進行了結構性的修改,並且不是通過iterator的方法進行的修改(add、remove)那麼就會拋出@ConcurrentModificationException異常 Linked
原创 LinkedList
簡介 雙端隊列,實現了List、Deque接口,允許存儲所有類型的元素,包括null值、非線程安全的 //獲得線程安全的LinkedList List list = Collections.synchronizedList(new Li
原创 ArrayList 源碼分析:自增原理
目錄 前言 ArrayList簡介 預備知識 容量增長機制 Add()方法 增長策略:Grow() 容量擴充代碼分析 構造器分析 前言 ArrayList是平時比較常用的集合類,因爲其容量自動增長的特性,使我們可以非常方便的使用,且不用擔
原创 LeetCode中級 二叉搜索樹中第k小的元素
給定一個二叉搜索樹,編寫一個函數 kthSmallest 來查找其中第 k 個最小的元素。 說明: 你可以假設 k 總是有效的,1 ≤ k ≤ 二叉搜索樹元素個數。 示例 1: 輸入: root = [3,1,4,null,2], k
原创 LeetCode中級算法-每個節點的右向指針
給定一個二叉樹 struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *next; } 填充它的每個 next 指針,讓這個指
原创 LeetCode中級算法 二叉樹的鋸齒形層次遍歷
給定一個二叉樹,返回其節點值的鋸齒形層次遍歷。(即先從左往右,再從右往左進行下一層遍歷,以此類推,層與層之間交替進行)。 例如: 給定二叉樹 [3,9,20,null,null,15,7], 3 / \ 9 20
原创 LeetCode中級算法-鏈表-奇偶鏈表
給定一個單鏈表,把所有的奇數節點和偶數節點分別排在一起。請注意,這裏的奇數節點和偶數節點指的是節點編號的奇偶性,而不是節點的值的奇偶性。 請嘗試使用原地算法完成。你的算法的空間複雜度應爲 O(1),時間複雜度應爲 O(nodes),nod
原创 LeetCode中級算法-相交鏈表
編寫一個程序,找到兩個單鏈表相交的起始節點。 例如,下面的兩個鏈表: A: a1 → a2 ↘ c1 → c2 → c3
原创 [LeetCode]初級算法-查找-第一個錯誤的版本
第一個錯誤的版本 你是產品經理,目前正在帶領一個團隊開發新的產品。不幸的是,你的產品的最新版本沒有通過質量檢測。由於每個版本都是基於之前的版本開發的,所以錯誤的版本之後的所有版本都是錯的。 假設你有 n 個版本 [1, 2, ..., n
原创 [LeetCode]中計算法-遞增的三元子序列
遞增的三元子序列 給定一個未排序的數組,判斷這個數組中是否存在長度爲 3 的遞增子序列。 數學表達式如下: 如果存在這樣的 i, j, k, 且滿足 0 ≤ i < j < k ≤ n-1, 使得 arr[i] < arr[j] <
原创 [LeetCode]初級算法-動態規劃-爬樓梯
爬樓梯 假設你正在爬樓梯。需要 n 步你才能到達樓頂。 每次你可以爬 1 或 2 個臺階。你有多少種不同的方法可以爬到樓頂呢? 注意:給定 n 是一個正整數。 示例 1: 輸入: 2 輸出: 2 解釋: 有兩種方法可以爬到樓頂。 1.
原创 [LeetCode]中級算法-最長迴文子串
最長迴文子串 給定一個字符串 s,找到 s 中最長的迴文子串。你可以假設 s 的最大長度爲1000。 示例 1: 輸入: "babad" 輸出: "bab" 注意: "aba"也是一個有效答案。 示例 2: 輸入: "cbbd" 輸
原创 [LeetCode]中級算法-兩數相加
兩數相加 給定兩個非空鏈表來表示兩個非負整數。位數按照逆序方式存儲,它們的每個節點只存儲單個數字。將兩數相加返回一個新的鏈表。 你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。 示例: 輸入:(2 -> 4 -> 3) + (
原创 [LeetCode]初級算法-樹-二叉樹的層次遍歷
二叉樹的遍歷 給定一個二叉樹,返回其按層次遍歷的節點值。 (即逐層地,從左到右訪問所有節點)。 例如: 給定二叉樹: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 1