原创 不要只看每日減少的新增數量,別忘了疫情最開始的時候可能也只有幾個人患病

不要只看每日減少的新增數量,別忘了疫情最開始的時候可能也只有幾個人患病

原创 線程的生命週期及各種狀態的轉換

線程的生命週期及各種狀態的轉換寫在前面線程六種狀態詳解圖解線程六種狀態間的轉換源碼分析線程的六種狀態 寫在前面 很多地方說線程有五種狀態我覺得有些籠統,在Thread類的源碼中明確描述了線程共有六種狀態,分別是:NEW、RUNN

原创 深度好文《睡覺是在爲國家做貢獻?NO!》

睡覺是在爲國家做貢獻? 不對,你“睡覺”做了三件事情:1. 成就了那些“不睡覺”的人;2. 對自己不負責;3.只能說不給國家添亂,但不能說做貢獻。 其實政府提倡的是不出門或者少出門。那些宣揚“睡覺就是在爲國家做貢獻”的

原创 結合計算機底層分析 “線程安全性的原理分析”(CPU高速緩存、緩存一致性、總線鎖和緩存鎖、緩存一致性協議、MESI協議、重排序、JMM等)

線程安全性的原理分析寫在前面從硬件層面瞭解可見性的本質CPU高速緩存緩存一致性總線鎖和緩存鎖緩存一致性協議MESI協議MESI協議的不足之處重排序CPU層面的內存屏障JMM 寫在前面 一段代碼引來的思考:爲什麼程序一直走不出Thr

原创 算法精講-leetcode5-最長迴文子串-擴展中心解法

最長迴文子串題目描述解題思路代碼示例運行結果 題目描述 給定一個字符串 str,找到 str 中最長的迴文子串。 例如:“ababcbae”的最長迴文子串是“abcba” 解題思路 擴展中心解法:遍歷整個字符串,將每個字符

原创 算法精講-leetcode23-合併K個排序鏈表**

合併K個排序鏈表題目描述解題思路代碼示例運行結果 題目描述 合併 k 個排序鏈表,返回合併後的排序鏈表。 示例: 輸入: [ 1->4->5, 1->3->4, 2->6 ] 輸出: 1->1->2->3->4->4

原创 異步責任鏈實現demo(zookeeper源碼有應用這種思想)--精解demo版

應用場景 現實案例:張三、李四、王五、趙六四個人結伴來到婚介所想要找對象,服務人員讓他們將自己的信息填寫在登記表上就可以回家了,然後登記人員根據四個人的登記表將信息錄入到系統,當系統中存在人員的登記信息之後媒婆就可以替他們找對象

原创 算法題精講-leetcode3-給定字符串中無重複字符的最長子串

給定一個字符串,請你找出其中不含有重複字符的 最長子串 的長度。 例如: 輸入:"afashuih" 輸出:5 最長字串爲:"fashui" 解法一:寫着很簡單,但是jvm運行起來在罵孃的寫法 解題思路:將隨給字符串拆分爲若干子

原创 算法精講-leetcode18-四數之和**

四數之和題目描述解題思路代碼示例運行結果 題目描述 題目描述:給定一個包含 n 個整數的數組 nums 和一個目標值 target,判斷 nums 中是否存在四個元素 a,b,c 和 d ,使得 a + b + c + d 的值與

原创 海康攝像頭二次開發詳解,包含海康攝像頭登錄、海康雲臺控制、視頻下載等功能

海康攝像頭二次開發詳解準備海康攝像頭SDK開發下載路徑:開發過程中遇到的問題記錄:添加maven依賴下面代碼中會出現的實體類CameraManage實體類:ControlDto實體類:HCNetSDK.java文件中缺失的部分類/

原创 深入分析代理模式——JDK動態代理和CGLib動態代理原理精解版

深入分析代理模式靜態代理簡單實現,可直接略過現實應用的簡單案例【各個省份人員信息在不同數據源中】,通過靜態代理切換數據源demo動態代理JDK動態代理使用JDK動態代理原理分析CGLib動態代理使用CGLib動態代理原理分析JDK

原创 算法精講-leetcode24-兩兩交換鏈表中的節點

兩兩交換鏈表中的節點題目描述解法一:節點交換思路複雜度分析:代碼示例:解法二:複雜度分析:代碼示例:運行結果leetcode題目鏈接 題目描述 給定一個鏈表,兩兩交換其中相鄰的節點,並返回交換後的鏈表。 你不能只是單純的改變節點

原创 Java併發——Synchronized關鍵字和鎖升級,詳細分析偏向鎖和輕量級鎖的升級

Synchronized關鍵字詳解synchronized的基本認識漫談對象存儲(僅針對於hotspot虛擬機)鎖的存儲synchronized鎖的升級偏向鎖輕量級鎖重量級鎖重量級鎖的進入與退出: synchronized的基本認

原创 算法精講-leetcode16-最接近的三數之和

最接近的三數之和題目描述解題思路代碼示例運行結果 題目描述 題目描述:給定一個包括 n 個整數的數組 nums 和 一個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假

原创 算法精講-馬拉車算法(Manacher's Algorithm)-查找最長迴文子串

馬拉車算法(Manacher's Algorithm)寫在前面1-預處理2-計算最長迴文子串長度3-計算最長迴文子串起始索引4-計算p數組代碼示例運行結果 寫在前面 一般在查找最長迴文子串時,更多的通過擴展中心解法,這種解法的時間