原创 算法——完全多部圖

一、問題描述 京東的題目         給定一張包含N個點、M條邊的無向圖,每條邊連接兩個不同的點,且任意兩點間最多隻有一條邊。對於這樣的簡單無向圖,如果能將所有點劃分成若干個集合,使得任意兩個同一集合內的點之間沒有邊相連,任意兩個不同

原创 JVM學習——垃圾回收器不同,垃圾回收的機制也不同

一、問題 在學習深入理解Java虛擬機(第二版)的3.6內存分配與回收策略中遇到了一個問題,就是代碼清單3-5,3-6,3-7在運行結束後控制檯GC打印結果與書上的不同(這裏就不列舉我的打印結果了)。 二、問題解決與分析 後來查閱資料與博

原创 二分法——二分法變種用法,缺失數組元素的查找

同學校招快手的一面手撕題目,要求logN級別時間複雜度和常數級別空間複雜度。    

原创 JVM——對編譯器,JIT,解釋器的存在和解決問題的理解

初次學習JVM,有不少理解不到位的地方,希望看客們諒解   問題:爲什麼jvm現在的結構是兩級即時編譯器、 編譯器與解釋器混合工作模式。   分解1:在理解爲什麼處理的關鍵,我們需要了解c和c++這種編譯性質的語言與java在運行方面的區

原创 spring框架題目

原创 MVCC——行級鎖實驗:sql語句如果發生了索引失效會怎麼樣

前提:set autocommit=0模擬多線程事務   問題:從國上一篇博客我們已經知道,update和insert在什麼情況下使用mvcc行級鎖不會出現阻塞和什麼情況下會出現阻塞,接下來我們考慮將鎖與索引結合起來,看看索引在mvcc行

原创 mvcc行級鎖實驗——update與insert(主鍵自增與主鍵不自增的區別)

前提:關閉自動提交模擬多線程情形:set auto_commit=0   update:如果同時對於同一行進行update,那麼後更改的線程將進入阻塞 事務1:更新成功未提交                               

原创 mysql與oracle的區別

1.聚合函數與非分組字段查詢問題案例:用oracle創建表:create table t1(  id Number(10),  name varchar2(20),  gender varchar2(20),  age Number(10

原创 面試——反射機制淺顯講解

一、反射用於動態類加載反射:java提供的動態執行機制,可以動態的加載類,動態創建對象,動態執行方法。上圖是jvm如何執行Class cls = Class.forName("Foo"),也就是jvm如何將Foo.class文件加載到內存

原创 group by與where能否一起使用?

百度解釋:可以。注意:where肯定在group by 之前。一,group by 字句也和where條件語句結合在一起使用。當結合在一起時,where在前,group by 在後。即先對select xx from xx的記錄集合用wh

原创 面試——cookie與session

面試問題1.session是有存儲時間的,如果session過期了,那麼再進行其他請求的時候,服務器肯定會終止連接,那麼我們生活中是怎麼避免這種問題的?答案:瀏覽器定時向服務器發送驗證過的cookie,每隔5分鐘發送一次,可以保證sess

原创 對象頭信息Object Header

備註:配合java中的鎖,以及jvm創建對象的具體過程,tlab等知識聯繫觀看 tlab:https://blog.csdn.net/xiaomingdetianxia/article/details/77688945 鎖:https:/

原创 面試——內存簡單講解

棧:1.棧描述的是一個方法執行的內存模型,每個方法被調用都會創建一個棧幀(存儲局部變量,操作數、方法出口等)2.JVM爲每一個線程創建一個棧,用於存放該線程執行方法的信息(實際參數,局部變量)3.棧是屬於線程私有的,不能在線程之間進行共享

原创 面試——socket以及tcp/ip的三次握手通信

socket是用來客戶端和服務器之間建立連接的一個組建,建立連接的過程是三次握手的過程,客戶端向服務器發送消息,問服務器在不在,客戶端要和它進行連接了,服務器接收到後,服務器向瀏覽器發送消息表明自己在,並問客戶端能收到服務器發送的消息嗎?