9723. Creating Data Structure Diagrams with MermaidMermaid and Tree
Common Data Structures drawn with Mermaid.
1. Tree
1.1 General Tree
graph TB
A((1))-->B((2))
A-->C((3))
A-->D((4))
B-->E((5))
B-->F((6))
B-->G((7))
C-->H((8))
D-->I((9))
D-->J((10))
graph TB
A((1))-->B((2))
A-->C((3))
A-->D((4))
B-->E((5))
B-->F((6))
B-->G((7))
C-->H((8))
D-->I((9))
D-->J((10))
1.2 Binary Tree
graph TB;
A((1))-->B((2))
A-->C((3));
B-->E((4))
B-->F((5))
C-->H((6))
C-->I((7))
graph TB;
A((1))-->B((2))
A-->C((3));
B-->E((4))
B-->F((5))
C-->H((6))
C-->I((7))
1.3 Binary Search Tree
graph TB;
A((8))-->B((3))
A-->C((10))
B-->D((1))
B-->E((6))
C-->F((9))
C-->G((14))
E-->H((4))
E-->I((7))
graph TB;
A((8))-->B((3))
A-->C((10))
B-->D((1))
B-->E((6))
C-->F((9))
C-->G((14))
E-->H((4))
E-->I((7))
1.4 Balanced Tree
graph TB;
A((3))-->B((9))
A-->C((20))
C-->D((15))
C-->E((7))
graph TB;
A((3))-->B((9))
A-->C((20))
C-->D((15))
C-->E((7))
The following tree is not balanced.
graph TB;
A((1))-->B((2))
A-->C((2))
B-->D((3))
B-->E((3))
D-->F((4))
D-->G((4))
1.5 Complete Binary Tree
graph TB
A((1))-->B((2))
A-->C((3))
B-->D((4))
B-->E((5))
C-->F((6))
C-->G((7))
D-->H((8))
D-->I((9))
E-->J((10))
graph TB
A((1))-->B((2))
A-->C((3))
B-->D((4))
B-->E((5))
C-->F((6))
C-->G((7))
D-->H((8))
D-->I((9))
E-->J((10))
1.6 Full Binary Tree
graph TB
A((1))-->B((2))
A-->C((3))
B-->D((4))
B-->E((5))
C-->F((6))
C-->G((7))
D-->H((8))
D-->I((9))
F-->J((10))
F-->K((11))
graph TB
A((1))-->B((2))
A-->C((3))
B-->D((4))
B-->E((5))
C-->F((6))
C-->G((7))
D-->H((8))
D-->I((9))
F-->J((10))
F-->K((11))
1.7 Perfect Binary Tree
graph TB
A((1))-->B((2))
A-->C((3))
B-->D((4))
B-->E((5))
C-->F((6))
C-->G((7))
D-->H((8))
D-->I((9))
E-->J((10))
E-->K((11))
F-->L((12))
F-->M((13))
G-->N((14))
G-->O((15))
graph TB
A((1))-->B((2))
A-->C((3))
B-->D((4))
B-->E((5))
C-->F((6))
C-->G((7))
D-->H((8))
D-->I((9))
E-->J((10))
E-->K((11))
F-->L((12))
F-->M((13))
G-->N((14))
G-->O((15))