原创 安卓音頻系統之一音頻基礎

音視基礎 聲波 音頻的錄製、存儲與回放 音頻採樣 Nyquist-Shannon採樣定律 聲道與立體聲道 聲音定級—WeberFechner law 音頻文件格式 聲波 從物理學的角度來講,聲音是機械波的一種。機械波是由機械震

原创 RecyclerView源碼分析二之繪製與複用

介紹 我們都知道在Android ViewGroup的繪製流程中,需要通過重寫方法onMeasure(int width,int height) 和 onLayout(int l,int t,int r,int b)來實現自定定義

原创 RecyclerView源碼分析一之簡單介紹

介紹 作爲一個Android開發者,肯定對RecyclerView並不陌生。它相對ListView來說,有很多的優勢,尤其是在使用方面。 Adapter LayoutManager Recycler ItemAnimator I

原创 RecyclerView源碼分析三之動畫分析

介紹 在上一篇中,我們分析了RecyclerView的繪製與複用。接下來我們繼續分析RecyclerView的動畫實現原理。上圖展示的是一個Recyclerview的中,某個Item的刪除,從動畫執行preLayout階段-> p

原创 Android Studio 之 Warning: debug info can be unavailable

問題描述 Warning: debug info can be unavailable. Please close other application using ADB: Restart ADB integration and

原创 算法之隊列求第 k 個數

問題描述 有些數的素因子只有 3,5,7,請設計一個算法找出第 k 個數。注意,不是必須有這些素因子,而是必須不包含其他的素因子。例如,前幾個數按順序應該是 1,3,5,7,9,15,21。 示例 1: 輸入: k = 5 輸出

原创 算法之鏈表環路檢測

問題描述 給定一個有環鏈表,實現一個算法返回環路的開頭節點。 有環鏈表的定義:在鏈表中某個節點的next元素指向在它前面出現過的節點,則表明該鏈表存在環路。 示例 1: 輸入:head = [1,2,3,4], pos = 1

原创 算法之鏈表分割鏈表

問題描述 編寫程序以 x 爲基準分割鏈表,使得所有小於 x 的節點排在大於或等於 x 的節點之前。如果鏈表中包含 x,x 只需出現在小於 x 的元素之後(如下所示)。分割元素 x 只需處於“右半部分”即可,其不需要被置於左右兩部分

原创 算法之鏈表刪除某中間結點

問題描述 實現一種算法,刪除單向鏈表中間的某個節點(即不是第一個或最後一個節點),假定你只能訪問該節點。 示例: 輸入:單向鏈表a->b->c->d->e->f中的節點c 結果:不返回任何數據,但該鏈表變爲a->b->d->e-

原创 算法之鏈表求和

問題描述 給定兩個用鏈表表示的整數,每個節點包含一個數位。 這些數位是反向存放的,也就是個位排在鏈表首部。 編寫函數對這兩個整數求和,並用鏈表形式返回結果。 示例: 輸入:(7 -> 1 -> 6) + (5 -> 9 -> 2

原创 算法之鏈表迴文鏈表判斷

問題描述 編寫一個函數,檢查輸入的鏈表是否是迴文的。 示例: 輸入: 1->2 輸出: false 輸入: 1->2->2->1 輸出: true 方法一 /** * 要求時間複雜度爲O(n),空間複雜度爲O(

原创 算法之鏈表移除重複節點

問題描述 編寫代碼,移除未排序鏈表中的重複節點。保留最開始出現的節點。 示例1: 輸入:[1, 2, 3, 3, 2, 1] 輸出:[1, 2, 3] 示例2: 輸入:[1, 1, 1, 1, 2] 輸出:[1, 2] 提示

原创 算法之鏈表獲取倒數第K個值

問題描述 實現一種算法,找出單向鏈表中倒數第 k 個節點。返回該節點的值。 實例: 輸入: 1->2->3->4->5 和 k = 2 輸出: 4 方法一 class Solution { public int kth

原创 算法之動態規劃最大遞增子序列問題(Java語言)

求解數組的最大子序列的個數問題 public static void main(String[] args) { int[] arr = {1,5,2,7,4,9,10,11,8,14,13}; System.out.pr

原创 組件化之組件通訊和APT、JavaPoet使用(二)

目錄 模塊間交互 APT介紹與使用 APT高階用法JavaPoet 模塊間交互 常見的交互方式 1)EventBus一對一通訊,會造成Bean對象泛 2)反射技術 維護成本較高,高版本容易出現@hide限 3)隱式意圖 維護成