More Related Content
Similar to PFDS 6.4.3 (20)
PFDS 6.4.3
- 9. with Sharing
7 4 1 8 3 1 3 4 7 8
2 7 4 1 8 3 1 2 3 4 7 8
5 2 7 4 1 8 3 1 2 3 4 5 7 8
- 12. with Sharing
add
7 4 1 8 3 7 1 3 4 8
2 7 4 1 8 3 2 7 1 3 4 8
5 2 7 4 1 8 3 5 2 7 1 3 4 8
- 13. with Sharing
sort
7 1 3 4 8 1 3 4 7 8
2 7 1 3 4 8 1 2 3 4 7 8
5 2 7 1 3 4 8 1 2 3 4 5 7 8
- 16. add’s cost
addSeg’s cost
6 5 2 7 1 3 4 8
(1 + 1) 5 6 2 7 1 3 4 8
- 17. add’s cost
addSeg’s cost
6 5 2 7 1 3 4 8
(1 + 1) 5 6 2 7 1 3 4 8
(1 + 1) + (2 + 2) 2 5 6 7 1 3 4 8
- 18. add’s cost
addSeg’s cost
6 5 2 7 1 3 4 8
(1 + 1) 5 6 2 7 1 3 4 8
(1 + 1) + (2 + 2) 2 5 6 7 1 3 4 8
(1 + 1) + (2 + 2) + (4 + 4) 1 2 3 4 5 6 7 8
- 19. add’s cost
addSeg’s cost
・・・
add時に、左 k ブロックが埋まっているとすると、
k-1 k-1 k
(1 + 1) + (2 + 2) + ... + (2 +2 ) = 2 (2 - 1)
- 22. potential
i
ψ(n) = 2n - 2 i Σ0 b i (n mod 2 - 1)
=
0 ≦ ψ(n) ≦ 2n
- 23. potential
b の項
n 2n 0 1 2 3 ψ(n)
0 0 + = 0
1 2 + -2 = 0
2 4 + -2 = 2
3 6 + -2 -4 = 0
4 8 + -2 = 6
5 10 + -2 -4 = 4
6 12 + -2 -6 = 4
7 14 + -2 -4 -8 = 0
8 16 + -2 = 14
9 18 + -2 -4 = 12
10 20 + -2 -6 = 12
- 24. change in potential
n ψ(n) ψ(n + 1) ψ(n + 1) - ψ(n)
0 0 0 0
1 0 2 2
2 2 0 -2
3 0 6 6
4 6 4 -2
5 4 4 0
6 4 0 -4
7 0 14 14
8 14 12 -2
9 12 12 0
- 29. sort’s cost
5 2 7 1 3 4 8
(1 + 2) 2 5 7 1 3 4 8
(1 + 2) + (1 + 2 + 4) 1 2 3 4 5 7 8
- 30. sort’s cost
・・・
k-1
(1 + 2) + (1 + 2 + 4) + ... + (1 + 2 + ... + 2 )
k+1
= (2 - 4) - (k - 1)
= 2n - k - 1