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))