red-black-tree.tex 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. \documentclass{article}
  2. \usepackage[pdftex,active,tightpage]{preview}
  3. \setlength\PreviewBorder{2mm}
  4. \usepackage{tikz}
  5. \usetikzlibrary{trees,arrows,positioning, calc}
  6. \tikzstyle{redVertex} =[draw,fill=red, circle,minimum size=18pt,inner sep=0pt, text=white]
  7. \tikzstyle{blackVertex}=[draw,fill=black, circle,minimum size=18pt,inner sep=0pt, text=white]
  8. \tikzstyle{nil} =[draw,fill=black,rectangle,minimum size=18pt,inner sep=0pt, text=white]
  9. \begin{document}
  10. \begin{preview}
  11. \begin{tikzpicture}[font=\sffamily,very thick,level/.style={sibling distance=80mm/#1}]
  12. \node [blackVertex] (r){8}
  13. child {
  14. node [blackVertex] {3}
  15. child {
  16. node [redVertex] {2}
  17. child {
  18. node [blackVertex] {-3}
  19. child {
  20. node [redVertex] {-4}
  21. child {node [nil] {NIL}}
  22. child {node [nil] {NIL}}
  23. }
  24. }
  25. child {
  26. node [blackVertex] {2}
  27. child {node [nil] {NIL}}
  28. child {node [nil] {NIL}}
  29. }
  30. }
  31. child {
  32. node [blackVertex] {6}
  33. child {
  34. node [redVertex] {5}
  35. child {node [nil] {NIL}}
  36. child {node [nil] {NIL}}
  37. }
  38. child {
  39. node [redVertex] {7}
  40. child {node [nil] {NIL}}
  41. child {node [nil] {NIL}}
  42. }
  43. }
  44. }
  45. child {
  46. node [blackVertex] {17}
  47. child {
  48. node [blackVertex] {9}
  49. child {
  50. node [redVertex] {11}
  51. child {node [nil] {NIL}}
  52. child {node [nil] {NIL}}
  53. }
  54. }
  55. child {
  56. node [redVertex] {19}
  57. child {
  58. node [blackVertex] {17}
  59. child {
  60. node [redVertex] {17}
  61. child {node [nil] {NIL}}
  62. child {node [nil] {NIL}}
  63. }
  64. }
  65. child {
  66. node [blackVertex] {20}
  67. child {node [nil] {NIL}}
  68. child {node [nil] {NIL}}
  69. }
  70. }
  71. };
  72. \end{tikzpicture}
  73. \end{preview}
  74. \end{document}