原创 Java 多線程、線程安全、線程間通信

文章目錄創建線程Thread類Runnable接口實現Runnable接口比繼承Thread類所具有的優勢線程安全線程同步同步代碼塊同步方法Lock鎖線程間通信 創建線程 Java使用 java.lang.Thread 類代表線程

原创 Dubbo+Zookeeper入門(上篇)

文章目錄1. 前言2. RPC2.1 概念2.2 RPC基本原理3. Zookeeper3.1 Zookeeper的數據模型3.2 Zookeeper的事件通知3.3 服務註冊與發現3.4 Zookeeper一致性問題3.5 Zo

原创 排序---希爾排序實現和性能分析

希爾排序 希爾排序是簡單插入排序的改進,直接插入排序的最壞情況時間複雜度達到O(n^2),比如從大到小的一串數字654321,使用插入排序從小到大進行排序,這就達到插入排序的最壞情況。 希爾排序是把記錄按下標的一定增量分組,對每組

原创 Git、GitHub、Idea+Git使用總結

git-2.16.2 文章目錄Git簡介工作區、暫存區、版本庫代碼託管中心兩種工作方式工作區、暫存區、本地庫演示GitHub使用Idea+Git Git簡介 Git是一個開源的分佈式版本控制系統,可以有效、高速地處理從很小到非

原创 排序---插入排序實現和性能分析

插入排序 public class InsertSort { public static void main(String[] args) { int[] arr = new int[10];

原创 查找---二分查找的三種實現和插值查找

二分查找 遞歸實現 區間爲左閉右閉 區間爲左閉右開 public class BinarySearchTest { public static void main(String[] args) { in

原创 樹---赫夫曼樹

赫夫曼樹 幾個概念: 路徑和路徑長度:在一棵樹中,從一個結點往下可以達到的孩子或孫子結點之間的通路,稱爲路徑。通路中分支的數目稱爲路徑長度。若規定根結點的層數爲1,則從根結點到第L層結點的路徑長度爲L-1。 結點的權及帶權路徑長

原创 BIO、NIO、Netty

文章目錄BIONIO通道(Channel)和緩衝區(Buffer)緩衝區直接緩衝區和非直接緩衝區通道使用NIO實現文件讀寫網絡NIOSelector選擇器SelectionKeyserverSocketChannelSocketC

原创 synchronized原理詳解

文章目錄synchronized關鍵字保證併發三大特性synchronized的兩個特性可重入特性不可中斷特性Java對象synchronized原理monitor監視器鎖monitor競爭monitor等待monitor釋放sy

原创 常量池、運行時常量池、字符串常量池

文章目錄常量池運行時常量池字符串常量池(StringTable)第一個例子第二個例子第三個例子 JDK8 常量池 存在於字節碼文件中 二進制字節碼中有:類基本信息、常量池、類方法定義(其中包含虛擬機指令) 常量池用於存放編

原创 樹---B樹、B+樹、B*樹

B樹 B樹(也稱B-tree,B-樹)特點: B樹的階:節點的最多子節點個數 B-樹的搜索,從根結點開始,對結點內的關鍵字(有序)序列進行二分查找,如果命中則結束,否則進入查詢關鍵字所屬範圍的子結點;重複,直到所對應的子指針爲空

原创 樹---二叉樹、順序存儲二叉樹、線索化二叉樹、二叉搜索樹(BST)、平衡二叉樹(AVL)

文章目錄樹二叉樹二叉樹的遍歷和查找順序存儲二叉樹線索化二叉樹二叉搜索樹BST(二叉排序樹、二叉查找樹)平衡二叉樹(AVL樹)紅黑樹 樹 樹形結構: 每個結點有零個或多個子結點; 沒有父結點的結點稱爲根結點; 每一個非根結點有且只

原创 SpringMVC的註解配置原理

META-INF\services\javax.servlet.ServletContainerInitializer web容器啓動的時候,會掃描每個jar包中META-INF\services\javax.servlet.Se

原创 JUC——ReentrantLock源碼簡讀(中)

JDK1.8 前言 《JUC——ReentrantLock源碼簡讀(上)》提到會在這篇討論hasQueuedPredecessors() 方法,爲了方便看,再來貼下源碼和上篇寫的註釋: package java.util.co

原创 JUC——ReentrantLock源碼簡讀(上)

JDK1.8 文章目錄前言用法示例公平鎖和非公平鎖加鎖流程公平鎖非公平鎖AQS隊列addWaiter()方法acquireQueued()方法圖解釋放鎖圖解 前言 最開始,Java自帶Synchronized關鍵字保證併發安全