File tree Expand file tree Collapse file tree 10 files changed +449
-0
lines changed Expand file tree Collapse file tree 10 files changed +449
-0
lines changed Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change
1
+ #! /bin/sh
2
+
3
+ dot -Tpng -o node-variants.png node-variants.dot
4
+ dot -Tpng -o skip-skip.png skip-skip.dot
5
+ dot -Tpng -o traversal-example.png traversal-example.dot
6
+ dot -Tpng -o unbalanced-hash-tree.png unbalanced-hash-tree.dot
Original file line number Diff line number Diff line change
1
+ digraph G {
2
+ row1 [shape =none , label =" " ]
3
+
4
+ A [label =" 000" ]
5
+ A -> Al [label =" L" ]
6
+ Al [label =" VERIFY" ]
7
+ A -> Ar [label =" R" ]
8
+ Ar [label =" SKIP" ]
9
+
10
+ B [label =" 001" ]
11
+ B -> Bl [label =" L" ]
12
+ Bl [label =" VERIFY" ]
13
+ B -> Br [label =" R" ]
14
+ Br [label =" VERIFY" ]
15
+
16
+ { rank = same ; row1; A; B; }
17
+
18
+ C [label =" 010" ]
19
+ C -> Cl [label =" L" ]
20
+ Cl [label =" VERIFY" ]
21
+ C -> Cr [label =" R" ]
22
+ Cr [label =" DESCEND" ]
23
+ Cr -> Crl
24
+ Crl [label =" ..." ]
25
+ Cr -> Crr
26
+ Crr [label =" ..." ]
27
+
28
+ D [label =" 011" ]
29
+ D -> Dl [label =" L" ]
30
+ Dl [label =" DESCEND" ]
31
+ Dl -> Dll
32
+ Dll [label =" ..." ]
33
+ Dl -> Dlr
34
+ Dlr [label =" ..." ]
35
+ D -> Dr [label =" R" ]
36
+ Dr [label =" SKIP" ]
37
+
38
+ E [label =" 100" ]
39
+ E -> El [label =" L" ]
40
+ El [label =" DESCEND" ]
41
+ El -> Ell
42
+ Ell [label =" ..." ]
43
+ El -> Elr
44
+ Elr [label =" ..." ]
45
+ E -> Er [label =" R" ]
46
+ Er [label =" VERIFY" ]
47
+
48
+ row1 -> invis [style =invis]
49
+ invis [shape =none , label =" " ]
50
+ invis -> C [style =invis]
51
+ { rank = same ; C; D; E; }
52
+
53
+ F [label =" 101" ]
54
+ F -> Fl [label =" L" ]
55
+ Fl [label =" DESCEND" ]
56
+ Fl -> Fll
57
+ Fll [label =" ..." ]
58
+ Fl -> Flr
59
+ Flr [label =" ..." ]
60
+ F -> Fr [label =" R" ]
61
+ Fr [label =" DESCEND" ]
62
+ Fr -> Frl
63
+ Frl [label =" ..." ]
64
+ Fr -> Frr
65
+ Frr [label =" ..." ]
66
+
67
+ G [label =" 110" ]
68
+ G -> Gl [label =" L" ]
69
+ Gl [label =" SKIP" ]
70
+ G -> Gr [label =" R" ]
71
+ Gr [label =" VERIFY" ]
72
+
73
+ H [label =" 111" ]
74
+ H -> Hl [label =" L" ]
75
+ Hl [label =" SKIP" ]
76
+ H -> Hr [label =" R" ]
77
+ Hr [label =" DESCEND" ]
78
+ Hr -> Hrl
79
+ Hrl [label =" ..." ]
80
+ Hr -> Hrr
81
+ Hrr [label =" ..." ]
82
+
83
+ Crl -> F [style =invis]
84
+ { rank = same ; F; G; H; }
85
+ }
Original file line number Diff line number Diff line change
1
+ digraph G {
2
+ A [label =" ???" ]
3
+ A -> Al [label =" L" ]
4
+ Al [label =" SKIP" ]
5
+ A -> Ar [label =" R" ]
6
+ Ar [label =" SKIP" ]
7
+ }
Original file line number Diff line number Diff line change
1
+ digraph G {
2
+ a [label =" A\n 101" ]
3
+ a -> b
4
+ a -> c
5
+
6
+ b [label =" B\n 111" ]
7
+ b -> s0
8
+ s0 [label =" SKIP\n 0x00..." ]
9
+ b -> d
10
+
11
+ d [label =" D\n 011" ]
12
+ d -> f
13
+ d -> s1
14
+ s1 [label =" SKIP\n 0x22..." ]
15
+
16
+ f [label =" F\n 000" ]
17
+ f -> v1
18
+ v1 [label =" VERIFY\n 0x55..." ]
19
+ f -> s2
20
+ s2 [label =" SKIP\n 0x66..." ]
21
+
22
+ c [label =" C\n 010" ]
23
+ c -> v2
24
+ v2 [label =" VERIFY\n 0x11..." ]
25
+ c -> e
26
+
27
+ e [label =" E\n 001" ]
28
+ e -> v3
29
+ v3 [label =" VERIFY\n 0x33..." ]
30
+ e -> v4
31
+ v4 [label =" VERIFY\n 0x44..." ]
32
+ }
Original file line number Diff line number Diff line change
1
+ digraph G {
2
+ 0 [label =" Root\n H(A || H(B || C))" ]
3
+ 0 -> A
4
+ A [label =" A\n skip" ]
5
+ 0 -> 1
6
+ 1 [label =" Node\n H(B || C)" ]
7
+ 1 -> B
8
+ B [label =" B\n skip" ]
9
+ 1 -> C
10
+ C [label =" C\n verify" ]
11
+ }
You can’t perform that action at this time.
0 commit comments