康託展開

定義: 康託展開是一個全排列到一個天然數的雙射,經常使用於構建哈希表時的空間壓縮。 康託展開的實質是計算當前排列在全部由小到大全排列中的名次,所以是可逆的。c++ 原理介紹 **X = A[0] * (n-1)! + A[1] * (n-2)! + … + A[n-1] * 0! **數組 A[i] 指的是位於位置i後面的數小於A[i]值的個數,後面乘的就是後面還有多少個數的階乘code 說明 :
相關文章
相關標籤/搜索