使用雜湊函式進行計算哈過程

2021-07-27 08:49:31 字數 667 閱讀 9133

hash(雜湊),又稱「雜湊」。

雜湊(hash)英文原意是「混雜」、「拼湊」、「重新表述」的意思。

在某種程度上,雜湊是與排序相反的一種操作,排序是將集合中的元素按照某種方式比如字典順序排列在一起,而雜湊通過計算雜湊值,打破元素之間原有的關係,使集合中的元素按照雜湊函式的分類進行排列。

在介紹一些集合時,我們總強調需要重寫某個類的 equlas() 方法和 hashcode() 方法,確保唯一性。這裡的 hashcode() 表示的是對當前物件的唯一標示。計算 hashcode 的過程就稱作 雜湊。

為什麼要有 hash

我們通常使用陣列或者鍊錶來儲存元素,一旦儲存的內容數量特別多,需要占用很大的空間,而且在查詢某個元素是否存在的過程中,陣列和鍊錶都需要挨個迴圈比較,而通過 雜湊 計算,可以大大減少比較次數。

然後把它們儲存到對應的位置。

當要查詢 13 時,只要先使用雜湊函式計算它的位置,然後去那個位置檢視是否存在就好了,本例中只需查詢一次,時間複雜度為 o(1)。

比如你和我一樣是個剁手族買書狂,家裡書一大堆,如果書存放時不分類直接擺到書架上(陣列儲存),找某本書時可能需要腦袋從左往右從上往下轉好幾圈才能發現;如果存放時按照類別分開放,技術書、**、文學等等分開(按照某種雜湊函式計算),找書時只要從它對應的分類裡找,自然省事多了。

雜湊的過程中需要使用雜湊函式進行計算。

使用儲存過程進行分頁的 儲存過程

使用儲存過程進行分頁的 use blog gocreate procedure blogcontent page pagesize int,一頁多少條 pageindex int,第幾頁 pagecount int output 一共多少頁,輸出引數 asbegin declare totalrec...

使用規劃求解進行優化計算

在日常工作中,對身邊的情況進行優化計算節省一些成本。例如分工計算,假設經理手上有四個團隊,每個團隊的工作效率和成本都不一樣,當乙個訂單簽訂後,需要計算如何給四個團隊分配任務以達到成本最小。這種情況使用 規劃求解 進行計算,具體步驟如下 建立excel 工作表,用來描述四個團隊和任務,或開啟光碟中第 ...

7 4 2 使用聚合操作進行計算

7.4.2 使用聚合操作進行計算 聚合背後的概念在於我們保持一些狀態,將在整個操作過程中傳遞。我們用乙個初始狀態開始,用給定的處理函式,為文件中的每個部件,計算乙個新的狀態。這種概念被反映在函式的簽名中 val aggregatedocument a documentpart a a documen...