ട്രീ (ഡാറ്റാ സ്ട്രക്ചർ)

കമ്പ്യൂട്ടർ സയൻസിൽ വ്യാപകമായി ഉപയോഗിക്കുന്ന ഒരു ഡാറ്റാ സ്ട്രക്ചറാണ് ട്രീ. നോഡുകളുടെ ഒരു കൂട്ടമാണ് ട്രീ.https://www.programiz.com/dsa/trees ആരേഖത്തിന്റെ(ഗ്രാഫ്) മറ്റൊരു രൂപമായ ട്രീ ഒരു നോഡിൽ നിന്നും, റൂട്ട് നോഡിൽ നിന്നും തുടങ്ങി, മറ്റ് നോഡുകളിലേക്ക് കണ്ണി ചേർക്കപ്പെട്ട വിധത്തിലാണ്. 

ട്രീയിലെ പ്രഥമ നോഡാണ് റൂട്ട്. റൂട്ട് നോഡിൽ നിന്നും കണ്ണിചേർക്കപ്പെട്ട എല്ലാ നോഡുകളും റൂട്ടിന്റെ ചൈൽഡ് നോഡുകളാണ്, റൂട്ട് അവയുടെ പേരന്റുമാകുന്നു. നോഡുകളെ തമ്മിൽ ബന്ധിപ്പിക്കുന്ന കണ്ണിയെ എഡ്ജ്(edge) എന്നു വിളിക്കുന്നു. ഒരു നോഡിൽ ഡാറ്റയും ചൈൽഡ് നോഡുകളെപ്പറ്റിയുള്ള വിവരങ്ങളും ഉണ്ടാവും. കണ്ണിയിൽ ഏറ്റവും താഴത്തായി വരുന്ന നോഡുകളെ ലീഫ് എന്നും റൂട്ടിനും ലീഫിനും ഇടയിൽ വരുന്നവയെ ഇന്റേണൽ നോഡുകൾ എന്നും വിളിക്കുന്നു, ലീഫിനു ചൈൽഡ് ഉണ്ടാവില്ല. നോൺ ലീനിയർ ഡാറ്റാസ്‌ട്രക്ചറായ ട്രീ ഹൈറാർക്കിക്കൽ രീതിയിലാണ് ഡാറ്റ സൂക്ഷിക്കുന്നത്. 

നോഡ് ഡെപ്ത്
ഒരു നോഡിൽ നിന്നും റൂട്ട് നോഡിലേക്കുള്ള ദൂരമാണ് പ്രസ്തുത നോഡിന്റെ ഡെപ്ത്(depth), ലിങ്കുകളുടെ/എഡ്ജുകളുടെ എണ്ണം വച്ചു നോഡിന്റെ ആഴം കണക്കാക്കാം.https://www.baeldung.com/cs/tree-depth-height-difference

നോഡ് ഹൈറ്റ്
ഒരു നോഡിൽ നിന്നും ഏറ്റവും അകലെയുള്ള ലീഫിലേക്കുള്ള ദൂരമാണ് നോഡിന്റെ ഹൈറ്റ്(height). റൂട്ട് നോഡിന്റെ ഹൈറ്റ് ആയിരിക്കും ട്രീയുടെ ഉയരം.
ട്രീ ട്രാവേർസൽ
ട്രീ ട്രാവേർസൽ(tree traversal), ട്രീസെർച്ച്(tree search)  ട്രീയിലെ നോഡുകളിലൂടെ സഞ്ചരിക്കുന്ന പ്രക്രിയയാണ്. ഓരോ യാത്രയിലും ഒരു നോഡിലൂടെ ഒറ്റത്തവണയേ കടന്നു പോകൂ. https://www.geeksforgeeks.org/tree-traversals-inorder-preorder-and-postorder/

ട്രീ പലവിധമുണ്ട്, ഹീപ് (ബൈനറി, ബൈനോമിയൽ.. ) സേർച്ച് ട്രീ (AVL, B, B+, റെഡ് - ബ്ലാക്ക്.. ) ഉദാഹരണങ്ങളാണ്.

അവലംബം
വർഗ്ഗം:ഡാറ്റാ ടൈപ്പുകൾ