原创 前端循序漸進 - HTML 實現情人節告白氣球

昨天情人節,大家過的好嗎?反正情人節還是跟我沒有什麼關係,尷尬了,最近剛好在學習 前端,又剛好看到這個公開課視頻,於是動手寫下記錄下。 效果圖(gif 錄的效果不好,無法播放聲音): 源碼地址:https://github.co

原创 槓上數據結構 - 棧

介紹 棧 : 是 一種只允許在一端進行插入,刪除的線性表,具有先進後出的特性。 通常,棧的操作端稱爲 棧頂,另一端稱爲 棧底。棧的插入稱爲 進棧(push), 棧的刪除操作稱爲 出棧(pop)。 棧的存儲結構 既然棧的本質是一種

原创 Android 自定義 View 中使用 Spannable

我們都知道 Android 中使用 Spannable 可以實現 TextView 富文本的顯示,但是在自定義控件中如何使用 Spannable 繪製不同樣式的文字呢? 例如這種效果,標題中的 分數字61 是粗體,分 是常規字體

原创 槓上數據結構 - 排序

槓上數據結構 - 排序 穩定:如果a原本在b前面,而a=b,排序之後a仍然在b的前面。 不穩定:如果a原本在b的前面,而a=b,排序之後 a 可能會出現在 b 的後面。 時間複雜度:對排序數據的總的操作次數。反映當n變化時,

原创 槓上數據結構 - 二叉樹

二叉樹在面試過程中出現的頻率非常高,因此熟練掌握二叉樹是吊打面試官的必備技能。 基本認識 二叉樹:是節點的一個有限集合,該集合要麼爲空,要麼由一個根節點加上左子樹和右子樹組成。 特點: 每個節點最多有兩顆子樹,即二叉樹不存在度

原创 Python 深入淺出 - HelloWorld

Python 開發環境 Python 版本:Python 3.6.3 IDE:PyCharm 第一個 HelloWorld 程序 使用 print(“xxxx”) 就可以向屏幕上輸出制定的文字內容,比如輸出 “HelloWor

原创 槓上數據結構 - 樹

線性與非線性 線性: 指的是元素之間是 “一對一” 的關係,比如只有唯一 一個"前驅"和唯一一個"後繼"。 非線性: 指的是元素之間是一對多的關係,比如 “樹” 中節點可能有多個孩子節點,“圖” 中可能有多個元素與之關聯。 樹 樹

原创 槓上數據結構 - 線性表

介紹 線性表 : 是由零個或多個數據元素組成的有限序列。 線性表有兩種實現方式: 順序結構存儲 : 指的是一段地址連續的存儲單元依次存儲表中的數據元素。 鏈式結構存儲 : 指的是各個元素存儲的位置不是連續的, 他們之間通過指針域進行

原创 Android 實現漸變色狀態欄

漸變色狀態欄變得越來越流行了, 剛好最近有這樣的需求, 現將實現過程記錄下來. 效果圖: Android 5.0 以上版本(左邊) :                          Android 4.4

原创 Android 架構組件 - LiveData

介紹 LiveData 是一款基於觀察者模式的可感知生命週期的核心組件。LiveData 爲界面代碼 (Observer)的監視對象 (Observable),當 LiveData 所持有的數據改變時,它會通知相應的界面代碼進行更新。

原创 Android AOP 面向切面編程 - AspectJ

AOP 概念 AOP 是 Aspect Oriented Programming 的縮寫,意爲 面向切面編程,通過預編譯和運行期動態代理實現程序功能的統一維護的一種技術。利用 AOP 可以實現對代碼的業務邏輯進行隔離,降低各功能間的耦

原创 Android NDK 開發 - Cmake

JNI 開發步驟 創建 Java 類,編寫 native 方法 public class HelloJNI { public native String getContentFromJni(); } Termina

原创 Kotlin 類與繼承

類 kotlin 中使用關鍵字 class 聲明類 類聲明由類名,類頭(指定其類型參數,主構造函數等),花括號包圍的類體構成,類頭 和類體都是可選的。 class Student { } 如果一個類沒有類體,則可以省略花括

原创 kotlin 基礎

類型 數字類型 Double 64 位 Float 32 位 Long 64 位 Int 32 位 Short

原创 Kotlin 控制流

if 表達式 在 kotlin 中,if 是一個表達式,即他會返回一個值,因此就不需要三元運算符(條件? 然後:否則) . fun getMax(): Int { var a: Int = 1 var b: Int =