Upload
rf0444
View
363
Download
7
Embed Size (px)
DESCRIPTION
Citation preview
PFDS 9.3.2
Skew Binomial Heaps
@rf0444
Skew Binomial Heap
Skew Binary Numbers の考えを使って
insert を O(1) にする
Skew Binomial Heap
Binomial Heap のサイズ と Skew Binary
Number の重みが合わない
合わない分はリストに蓄えておく
必要時に辻褄を合わせる
リストのサイズ <= ランク
insert
[ ]
insert
1
1
[ ]
insert
1
2
2 1
insert 3
31
2 1
2
insert 4
31
2
31
2
4
insert 5
31
2
4
31
2
4
5
insert 6
31
2
4
631
2
4
5
5
insert 7
31
24 6
5
31
2
4
6
5
7
insert 8
31
24 6
5
731
24 6
5
7 8
insert 9
31
24 6
5
79
31
24 6
5
78
8
insert 10
31
24 6
5
7
9
8
31
24 6
5
79
8
10
deleteMin
31
24 6
5
7
9
8
10
deleteMin
31
24 6
5
7
9
8
10
removeMinTree 後
31
24 6
5
7
9
8
10
t ts
deleteMinmerge 前
2 4 6
5 9
8 10
37removeMinTree 後
31
24 6
5
7
9
8
10
t ts
xs :
deleteMinmerge 後 37
2 4 6
5
9
8
10
merge 前
2 4 6
5 9
8 10
37 xs :xs :
deleteMin
3
2 4 6
57
9
8
10
merge 後 37
2 4 6
5
9
8
10
insertAll 後xs :
deleteMin
3
2 4 6
57
9
8
10
31
24 6
5
7
9
8
10