binary-search-tree/red-black-tree

View on GitHub
media/sketch.ipe

Summary

Maintainability
Test Coverage
<?xml version="1.0"?>
<!DOCTYPE ipe SYSTEM "ipe.dtd">
<ipe version="70206" creator="Ipe 7.2.6">
<info created="D:20170120141348" modified="D:20170120164831"/>
<ipestyle name="basic">
<symbol name="arrow/arc(spx)">
<path stroke="sym-stroke" fill="sym-stroke" pen="sym-pen">
0 0 m
-1 0.333 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/farc(spx)">
<path stroke="sym-stroke" fill="white" pen="sym-pen">
0 0 m
-1 0.333 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/ptarc(spx)">
<path stroke="sym-stroke" fill="sym-stroke" pen="sym-pen">
0 0 m
-1 0.333 l
-0.8 0 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/fptarc(spx)">
<path stroke="sym-stroke" fill="white" pen="sym-pen">
0 0 m
-1 0.333 l
-0.8 0 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="mark/circle(sx)" transformations="translations">
<path fill="sym-stroke">
0.6 0 0 0.6 0 0 e
0.4 0 0 0.4 0 0 e
</path>
</symbol>
<symbol name="mark/disk(sx)" transformations="translations">
<path fill="sym-stroke">
0.6 0 0 0.6 0 0 e
</path>
</symbol>
<symbol name="mark/fdisk(sfx)" transformations="translations">
<group>
<path fill="sym-fill">
0.5 0 0 0.5 0 0 e
</path>
<path fill="sym-stroke" fillrule="eofill">
0.6 0 0 0.6 0 0 e
0.4 0 0 0.4 0 0 e
</path>
</group>
</symbol>
<symbol name="mark/box(sx)" transformations="translations">
<path fill="sym-stroke" fillrule="eofill">
-0.6 -0.6 m
0.6 -0.6 l
0.6 0.6 l
-0.6 0.6 l
h
-0.4 -0.4 m
0.4 -0.4 l
0.4 0.4 l
-0.4 0.4 l
h
</path>
</symbol>
<symbol name="mark/square(sx)" transformations="translations">
<path fill="sym-stroke">
-0.6 -0.6 m
0.6 -0.6 l
0.6 0.6 l
-0.6 0.6 l
h
</path>
</symbol>
<symbol name="mark/fsquare(sfx)" transformations="translations">
<group>
<path fill="sym-fill">
-0.5 -0.5 m
0.5 -0.5 l
0.5 0.5 l
-0.5 0.5 l
h
</path>
<path fill="sym-stroke" fillrule="eofill">
-0.6 -0.6 m
0.6 -0.6 l
0.6 0.6 l
-0.6 0.6 l
h
-0.4 -0.4 m
0.4 -0.4 l
0.4 0.4 l
-0.4 0.4 l
h
</path>
</group>
</symbol>
<symbol name="mark/cross(sx)" transformations="translations">
<group>
<path fill="sym-stroke">
-0.43 -0.57 m
0.57 0.43 l
0.43 0.57 l
-0.57 -0.43 l
h
</path>
<path fill="sym-stroke">
-0.43 0.57 m
0.57 -0.43 l
0.43 -0.57 l
-0.57 0.43 l
h
</path>
</group>
</symbol>
<symbol name="arrow/fnormal(spx)">
<path stroke="sym-stroke" fill="white" pen="sym-pen">
0 0 m
-1 0.333 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/pointed(spx)">
<path stroke="sym-stroke" fill="sym-stroke" pen="sym-pen">
0 0 m
-1 0.333 l
-0.8 0 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/fpointed(spx)">
<path stroke="sym-stroke" fill="white" pen="sym-pen">
0 0 m
-1 0.333 l
-0.8 0 l
-1 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/linear(spx)">
<path stroke="sym-stroke" pen="sym-pen">
-1 0.333 m
0 0 l
-1 -0.333 l
</path>
</symbol>
<symbol name="arrow/fdouble(spx)">
<path stroke="sym-stroke" fill="white" pen="sym-pen">
0 0 m
-1 0.333 l
-1 -0.333 l
h
-1 0 m
-2 0.333 l
-2 -0.333 l
h
</path>
</symbol>
<symbol name="arrow/double(spx)">
<path stroke="sym-stroke" fill="sym-stroke" pen="sym-pen">
0 0 m
-1 0.333 l
-1 -0.333 l
h
-1 0 m
-2 0.333 l
-2 -0.333 l
h
</path>
</symbol>
<pen name="heavier" value="0.8"/>
<pen name="fat" value="1.2"/>
<pen name="ultrafat" value="2"/>
<symbolsize name="large" value="5"/>
<symbolsize name="small" value="2"/>
<symbolsize name="tiny" value="1.1"/>
<arrowsize name="large" value="10"/>
<arrowsize name="small" value="5"/>
<arrowsize name="tiny" value="3"/>
<color name="red" value="1 0.5 0.5"/>
<color name="green" value="0.5 1 0.5"/>
<color name="blue" value="0.5 0.5 1"/>
<color name="yellow" value="1 1 0.5"/>
<color name="orange" value="1 0.823 0.5"/>
<color name="gold" value="1 0.921 0.5"/>
<color name="dark grey" value="0.2"/>
<color name="light grey" value="0.8"/>
<dashstyle name="dashed" value="[4] 0"/>
<dashstyle name="dotted" value="[1 3] 0"/>
<dashstyle name="dash dotted" value="[4 2 1 2] 0"/>
<dashstyle name="dash dot dotted" value="[4 2 1 2 1 2] 0"/>
<textsize name="large" value="\large"/>
<textsize name="small" value="\small"/>
<textsize name="tiny" value="\tiny"/>
<textsize name="Large" value="\Large"/>
<textsize name="LARGE" value="\LARGE"/>
<textsize name="huge" value="\huge"/>
<textsize name="Huge" value="\Huge"/>
<textsize name="footnote" value="\footnotesize"/>
<textstyle name="center" begin="\begin{center}" end="\end{center}"/>
<textstyle name="itemize" begin="\begin{itemize}" end="\end{itemize}"/>
<textstyle name="item" begin="\begin{itemize}\item{}" end="\end{itemize}"/>
<gridsize name="4 pts" value="4"/>
<gridsize name="8 pts (~3 mm)" value="8"/>
<gridsize name="16 pts (~6 mm)" value="16"/>
<gridsize name="32 pts (~12 mm)" value="32"/>
<gridsize name="10 pts (~3.5 mm)" value="10"/>
<gridsize name="20 pts (~7 mm)" value="20"/>
<gridsize name="14 pts (~5 mm)" value="14"/>
<gridsize name="28 pts (~10 mm)" value="28"/>
<gridsize name="56 pts (~20 mm)" value="56"/>
<anglesize name="90 deg" value="90"/>
<anglesize name="60 deg" value="60"/>
<anglesize name="45 deg" value="45"/>
<anglesize name="30 deg" value="30"/>
<anglesize name="22.5 deg" value="22.5"/>
<tiling name="falling" angle="-60" step="4" width="1"/>
<tiling name="rising" angle="30" step="4" width="1"/>
</ipestyle>
<page>
<layer name="alpha"/>
<layer name="beta"/>
<view layers="alpha beta" active="alpha"/>
<path layer="alpha" stroke="dark grey" fill="dark grey" pen="fat">
160 704 m
256 768 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
160 704 m
112 640 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
112 640 m
88 576 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
112 640 m
136 576 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
184 576 m
208 640 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
208 640 m
232 576 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
280 576 m
304 640 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
328 576 m
304 640 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
376 576 m
400 640 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
400 640 m
424 576 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
304 640 m
344 704 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
344 704 m
400 640 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
344 704 m
256 768 l
</path>
<path stroke="dark grey" fill="dark grey" pen="fat">
160 704 m
208 640 l
</path>
<path layer="beta" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 24 0" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 320 704 e
</path>
<path matrix="1 0 0 1 32 64" stroke="white" fill="red" pen="ultrafat">
16 0 0 16 128 640 e
</path>
<path matrix="1 0 0 1 176 0" stroke="white" fill="red" pen="ultrafat">
16 0 0 16 128 640 e
</path>
<path matrix="1 0 0 1 272 0" stroke="white" fill="red" pen="ultrafat">
16 0 0 16 128 640 e
</path>
<path matrix="1 0 0 1 -48 -128" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 -144 -128" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 -168 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 -72 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 -24 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 -120 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 24 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 120 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 168 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
<path matrix="1 0 0 1 72 -192" stroke="white" fill="dark grey" pen="ultrafat">
16 0 0 16 256 768 e
</path>
</page>
</ipe>