原创 Java併發編程常見面試題奪命追問

1. 守護線程(Daemon)與用戶線程(User)的區別 守護線程是程序運行時在後臺提供服務的線程,當所有非守護線程結束後,也即程序終止時,所有守護線程都將一起被殺死。 main()是用戶線程,JVM的垃圾回收線程就是一個守護線程

原创 Java 併發編程(四)JVM中鎖的優化

前提知識—Java對象頭(Mark Word) 鎖的優化 偏向鎖、輕量級鎖、重量級鎖三者各自的應用場景 偏向鎖:只有一個線程進入臨界區 輕量級鎖:多個線程交替進入臨界區 重量級鎖:多個線程同時進入臨界區 偏向鎖、輕量級鎖都是JV

原创 圖論算法(三)最短路徑

最短路徑 定義:在一幅加權有向圖中,從頂點s到頂點t的最短路徑是所有從s到t的路徑中的權重最小者。 Dijkstra 算法 Dijkstra算法會生成一顆最短路徑樹,樹的根爲起始頂點s, 樹的分支爲從頂點s到圖G中所有其他頂點的最

原创 圖論算法(二)最小生成樹

圖論算法之最小生成樹 最小生成樹 定義 一幅加權圖的最小生成樹(MST)是它的一棵權值(樹中所有邊的權值之和)最小的生成樹。 原理 圖的一種切分是將圖中所有頂點分爲兩個非空且不重疊的兩個集合。橫切邊是一條連接兩個屬於不同集合的頂點的邊

原创 圖論算法(一)之深度優先搜索與廣度優先搜索

圖論算法之深度優先搜索與廣度優先搜索 圖論基礎知識 圖是由一組頂點和一組能夠將兩個頂點相連的邊組成的(可以無邊,但是至少包含一個頂點): 一組頂點: 通常用V(vertex)表示頂點集合 一組邊: 通常用E(edge)表示邊集合

原创 散列表原理及實現

散列表原理及實現 散列表原理 散列表:使用算術操作將鍵轉化爲數組的索引來訪問數組中的鍵值對, 使用散列表,可以實現常數級別的查找和插入. 使用散列的查找算法主要要解決的兩個問題: 散列函數的設計(即如何用散列函數將被查找的鍵

原创 淺析樹結構之紅黑樹

淺析樹結構之紅黑樹 首先先來了解一下紅黑樹的五個性質 每個結點非紅即黑。 根結點是黑的。 每個葉結點(這裏葉節點指的是NULL結點)都是黑的。 如果一個結點是紅的,那麼它的兩個兒子都是黑的。 對於任意結點而言,其到樹末端即NULL節

原创 淺析樹結構之AVL平衡二叉樹(AVL樹原理及代碼實現)

平衡二叉樹 平衡二叉樹定義 平衡二叉樹有兩種形式: 是一棵空樹 是一個左右兩個子樹的高度差的絕對值不超過1,並且左右子樹都是平衡二叉樹的樹 平衡二叉樹的常用實現方法有AVL樹,紅黑樹,替罪羊樹,Treap,伸展樹等. 在這

原创 淺析樹結構之二叉查找樹(BST樹代碼實現)

二叉查找樹 二叉查找樹定義 定義:一顆二叉查找樹(BST)是一棵二叉樹,其中每個結點都含有一個Comparable的鍵(以及相關聯的值)且每個結點的鍵都大於其左子樹中的任意結點的鍵而小於右子樹的任意結點的鍵. 二叉查找樹中搜索,插入

原创 小白學TCP/IP(八)路由選擇篇

路由選擇 路由器的結構 路由器從功能上可以劃分爲:路由選擇和分組轉發。 分組轉發結構由三個部分組成:交換結構、一組輸入端口和一組輸出端口。 路由器分組轉發流程 從數據報的首部提取目的主機的 IP 地址 D,得到目的網絡地址 N

原创 三張圖詳解從輸入URL網址到網頁呈現中間發生了什麼

假設客戶端主機最開始沒有 IP 地址以及其它信息,那麼第一步就需要先使用 DHCP 來獲取客戶端主機的IP地址。 獲取到客戶端主機的IP後,接下來第二步就是來獲取域名對應的IP地址了也就是DNS解析過程,然而此時的網關的MAC地址

原创 小白學TCP/IP之TCP與UDP篇

TCP與UDP篇 TCP提供可靠的通信傳輸,而UDP則常被用於廣播和細節控制交給應用的通信傳輸 傳輸層 傳輸層的作用: 網絡層只把分組發送到目的主機,但是真正通信的並不是主機而是主機中的進程。傳輸層提供了進程間的邏輯通信,傳輸層

原创 小白學TCP/IP之IP協議篇

IP協議篇 網絡層與數據鏈路層之間的關係 網絡層負責端到端之間(消息發送端與消息接收段)的通信,但至於中間消息是怎樣被轉發的,得通過數據鏈路層實現,也就是說數據鏈路層負責每個數據鏈路從源MAC地址到目標MAC地址之間的數據傳輸,而網絡

原创 小白學TCP/IP之數據鏈路層篇

數據鏈路層 數據鏈路層位於物理層與網絡層之間,其設計的初衷就是順利爲網絡層提供數據服務,不考慮可靠性,可靠性的部分由傳輸層的TCP協議實現. 數據鏈路層在網絡傳遞中的地位 假設在通信的過程中需要通過路由器的話,那麼數據的具體流動

原创 小白學TCP/IP之IP協議相關技術

IP協議相關技術 IP旨在讓最終目標主機收到數據包,但是這一過程僅僅依靠IP是無法實現的,必須要有實現解析主機名稱和MAC地址的功能,以及數據包在發送過程中異常情況處理的功能,此外還會涉及IP必不可少的其他功能. DNS(Dom