9 28技術隨筆

2022-08-14 19:24:11 字數 809 閱讀 3999

1.dns

將網域名稱轉成ip位址

2.虛擬記憶體

作業系統把一部分硬碟當成記憶體來用,避免執行的程式過大的時候記憶體崩掉。它的大小是由cpu的定址空間以及物理盤的剩餘空間決定的。例如32位的系統,定址空間即32位,最大支援4g(2的32次方)的虛擬空間,64位的系統最大支援8g的虛擬記憶體空間。

3.arraylist 和vector的擴容

當儲存空間不足時,arraylist預設增加原始空間的50%,vector預設增加兩倍(即*2)。

arraylist無參構造是,分配的空間是0,帶參構造時直接分配記憶體。arraylist list = new arraylist<>(20); 構造的時候就分配了20個記憶體空間,沒有經過擴容。

4.volatile關鍵字

一般和synchronized比較。

volatile 是變數修飾符,synchronized可以修飾類、變數、**段;

volatile只能保證修改可見性,synchronized保證修改可見性及變數的原子性(即同一時刻只允許乙個執行緒修改該變數)。

volatile不會造成執行緒的阻塞,synchronized有可能造成執行緒的阻塞。

5.實現hashmap的put、get方法

hashmap的實現需要陣列和鍊錶。hash位址對應陣列的下標。

陣列裡存的是entry物件,當出現衝突的時候結點的next指標指向衝突的結點。

6.物件的記憶體分配

new出來的記憶體全都在堆上分配。

訓練總結 9 28

這段時間一直在看樹狀陣列,之前的知識都回顧了一下,過段時間再看,有了更深的理解。前幾天做的塗色問題,之前一直有一點不理解,雖然它很簡單,直到前幾天重新理解了一下,才徹底弄懂。還有一道離線處理的題目,求某一區間不重複元素的和,與map結合。還遇到了一道dp題,lis演算法解決。今天的關於樹狀陣列維度的...

閱讀筆記9 28

第一章 軟體的本質 軟體的定義 軟體 1 指令的集合 電腦程式 通過執行這些指令可以滿足預期的特性,功能和效能需求 2 資料結構,使得資料可以合理利用資訊 3 軟體描述資訊,它以硬拷貝和虛擬形式存在,用來描述程式的操作和使用。軟體應用領域 系統軟體 整套服務用於其他程式的程式。某些系統軟體 例如編譯...

技術隨筆和隨想

老生常談和自我臆想 1.maching learning和deep learning是完全不同的兩類東西。2.監督學習和非監督學習的本質區別在於乙個對於計算機進行監督,乙個讓計算機處於非監督的狀態。4.分詞工具分為幾類,由小到大,jie8常用分詞是比較小的分詞工具,然後到斯坦福的nlp分詞工具,具體...