Pfds 9 2_2

532 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
532
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Pfds 9 2_2

  1. 1. PFDS chap.9.2.2 Zeroless Representations @shtaag2012年9月23日日曜日
  2. 2. RList in 9.2.1 cons, head, tail がO(log n) 9.2.2では headをO(1)にする2012年9月23日日曜日
  3. 3. 9.2.1でheadがO(log n)かかっていた理由 unconsTreeではじめの要素Zeroの時,再帰が走る2012年9月23日日曜日
  4. 4. Zero | One構造をOne | Two構造に変えればいい headで取り出す対象を常に保持している fun head (One Leaf x) :: _) = x | head (Two (Leaf x, Leaf y) :: _) = x2012年9月23日日曜日
  5. 5. [] 1 : [] Zero | One構造 0 : 1 : [] 1 : 1 : [] (2^0 + 2^1 = 3) 0 : 0 : 1 : [] 1 : 0 : 1 : [] 0 : 1 : 1 : [] 1 : 1 : 1 : [] (2^0 + 2^1 + 2^2 = 7) 0 : 0 : 0 : 1 : [] 1 : 0 : 0 : 1 : [] 1 : 1 : 0 : 1 : [] .... 1 : 1 : 1 : 1 : [] (2^0 + 2^1 + 2^2 + 2^3 = 15) 0 : 0 : 0 : 0 : 1 : [] (2^4 = 16)2012年9月23日日曜日
  6. 6. [] One | Two構造 1 : [] (1) 2 : [] (2^1 = 2) 1 : 1 : [] 2 : 1 : [] 1 : 2 : [] 2 : 2 : [] (2^2 + 2^1 = 6) 1 : 1 : 1 : [] 2 : 1 : 1 : [] ... 2 : 2 : 2 : [] (2^3 + 2^2 + 2^1 = 14) 1 : 1 : 1 : 1 : [] 2 : 1 : 1 : 1 : [] (2^4 = 16)2012年9月23日日曜日

×