原创 Redis系列(三)底層數據結構之壓縮列表

前言 定義 壓縮列表的定義 壓縮列表節點的定義 新增節點 問題:級聯更新 總結 參考文章 聯繫我 前言 Redis 已經是大家耳熟能詳的東西了,日常工作也都在使用,面試中也是高頻的會涉及到,那麼我們對它究竟瞭解有多深刻呢

原创 Redis系列(二)底層數據結構之雙端鏈表

前言 定義 優劣 雙向鏈表 無環鏈表 帶有頭指針和尾指針 帶有長度計數器 總結 參考文章 聯繫我 前言 Redis 已經是大家耳熟能詳的東西了,日常工作也都在使用,面試中也是高頻的會涉及到,那麼我們對它究竟瞭解有多深刻呢

原创 Redis系列(四)底層數據結構之快速列表

前言 定義 優劣 ziplist 切割大小 壓縮深度 總結 參考文章 聯繫我 前言 Redis 已經是大家耳熟能詳的東西了,日常工作也都在使用,面試中也是高頻的會涉及到,那麼我們對它究竟瞭解有多深刻呢? 我讀了幾本 Redis

原创 Mysql數據庫監聽binlog的開啓步驟

這篇文章主要給大家介紹了關於Mysql數據庫監聽binlog的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Mysql具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧 前言 我們經常需要根據

原创 [設計模式]-責任鏈模式

1.介紹 使多個對象都有機會處理請求,從而避免請求的發送者與接受者之間的耦合關係. 將多個接受者連成一條鏈,沿着該鏈處理請求,知道請求被處理爲止. 類圖 角色 抽象處理者: 定義了處理請求的接口或者抽象類,提供了處理請求的的方法和設

原创 [設計模式]-模板方法模式

前言 在上一篇文章責任鏈模式中提到了模板方法模式,因此這裏簡單介紹一下. 模板方法模式比較簡單,或者說比較常用.在開發過程中,許多人在不知不覺的情況下就會使用,只要他具有良好的面對對象思維. 比如當你寫了Dog和Cat兩個類,發現很多

原创 二分法查找及有重複值的二分法

前言 最近也在進行一些面試嘛,也見識到了很多各種各樣的題目,其中就有一些和二分查找相關的. 二分查找,在有序的數組中快速找到目標值. 這個算法在上學的時候學過,之後就沒有看過了,因爲比較"簡單"嘛~. 然而在面試過程中,我在二分查找及

原创 Java中Executors中提供的4種線程池

前言 瞭解一下線程池的源碼實現. ThreadPoolExecutor jdk中關於線程池一個比較核心的類是ThreadPoolExecutor,先來看一下他的實現. 構造方法 public ThreadPoolExecutor(in

原创 OOM,StackOverFlow以及死鎖的測試

這篇文章主要是記錄自己做的一些小的測試.主要包括內存溢出,棧溢出,以及死鎖問題. PS:文章中使用了Arthas工具,用來動態監控JVM的一些資源,非常好用,強烈安利一下. OOM OutOfMemory ,內存不夠用了,一般是什麼原

原创 阿里開源的Java動態追蹤工具Arthas使用

本文僅測試及學習Arthas命令的使用方式,對原理不做探討,有興趣的胖友可以戳下方美團博客的鏈接,講解的十分不錯. 相關鏈接 arthas中文官方網站 美團博客關於java動態追蹤的一篇文章,講解了部分原理,推薦閱讀 官方的命令參考手

原创 [隨緣一題]後綴表達式(逆波蘭表達式)轉換

來源: 維基百科-後綴表達式 目標 將中綴表達式轉換爲後綴表達式,比如((5+2) * (8-3))/4 轉換爲5 2 + 8 3 - * 4 /. 解題思路 將表達式的字符逐一處理,如果是數字(變量)則直接輸出,如果是字符入棧,並按

原创 [隨緣一題]實現交易計算盈利

來源: 根據先進先出原則實現交易. 例如: buy 100 share(s) at $20 each buy 20 share(s) at $24 each buy 200 share(s) at $36 each sell 150

原创 [隨緣一題]回溯法解決N皇后問題

來源: 維基百科-N皇后問題 解題思路 採用回溯法,即逐一位置放置,然後放置下一行,如果下一行沒有合法位置,則回溯到上一行,調整位置,直到得到所有值. 實現代碼 /** * solve the N-Queen problem */

原创 Java的序列化與反序列化

前言 Java的序列化與反序列化是Java中比較重要的一個知識,本文將總結一下,怎麼使用序列化功能以及經常遇到的一些問題的解答. 什麼是Java的序列化 JDK提供給我們的,可以將某一個對象轉化爲二進制字節流保存,並從字節流恢復對象的

原创 Java類加載的執行順序

前言 那一年,呼延十又回想起被加載順序支配的恐懼,筆試題上,好幾個類,幾個方法,幾個輸出語句,讓你按照順序寫出輸出.我真的是有一句… 但是呢,我們還是有了解一下的必要的,在編碼過程中有許多的應用. 正文 經常用來比較順序的,無非就是靜