1.置換的定義:n個元素的全排列/一一對映
2.性質:
1)置換具乘法有結合律但是沒有交換律,但是不相交的迴圈乘法具有交換律
2)置換可以唯一地分解為不相交迴圈的乘積
3.迴圈節:置換的迴圈分解中迴圈的個數稱為該置換的迴圈節
4.應用:
1)等價類計數
不動點:若某個方案s經過置換f後不變,稱s為f的不動點,記置換f的不動點個數為c(f)。
伯恩賽德定理:ans=[∑
ki=1
c(fi
)]/k
,fi 為第i個置換,c為不動點個數,ans是等價類個數和
波利亞定理:ans=[∑
ki=1
cntm
(fi)
]/k ,m(f)為置換f的迴圈節,cnt為可用種類數(可塗色種數)
波利亞定理使得等價類計數問題轉化為以下問題:
1.找到所有的置換:一般為旋轉和反射/翻轉兩種操作,每種操作由於旋轉角度和對稱軸不同而形成不同等價類,但是不以旋轉和翻轉方向作為不同等價類的計算標準。
2.對於每一種置換,尋找各自迴圈節m(f),就是看經過多少次相同該置換後,各點回到原來位置
3.帶入波利亞公式求解即可。
結論 置換分解
1.置換b可以分解為a^2的條件是b的偶數長度迴圈有偶數個
2.奇數迴圈可以分結尾乙個奇數迴圈平方的形式
高次方形式有類似結論
3.交換排列
1.乙個n個數的排列的置換為f,f的迴圈節為k,那麼它至少交換n-k次才能得到1-n的順序排列
頁面置換演算法 CLOCK置換演算法及其改進版演算法
本文主要介紹頁面置換演算法中的clock置換演算法。頁面置換演算法中的lru演算法最接近理想情況下的opt演算法,但是實現起來比較困難且開銷較大,所以很多設計者試圖用開銷比較小的演算法接近lru演算法,clock演算法就是其中一種。1.簡單的clock演算法是通過給每乙個訪問的頁面關聯乙個附加位 r...
庫及其應用
庫及其應用 danny kalev發表於2004 12 27 16 11 06 1 何為 tuple?tuple 是乙個大小固定的異構物件集合。tuple 型別有很多有用的應用,比如封裝乙個函式的多個返回值以及模擬多個物件的同時賦值和比較。tuple 的大小是指它所包含的元素的個數。目前的 tupl...
Merkle Tree及其應用
merkle tree,是一種樹 資料結構中所說的樹 網上大都稱為merkle hash tree,這是因為 它所構造的merkle tree的所有節點都是hash值。merkle tree具有以下特點 1.它是一種樹,可以是二叉樹,也可以多叉樹,無論是幾叉樹,它都具有樹結構的所有特點 2.merk...