Jump to content

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

വിക്കിപീഡിയ, ഒരു സ്വതന്ത്ര വിജ്ഞാനകോശം.
ഒരു സാധാരണ, ബൈനറി അല്ലാത്ത, അൺസോർട്ടഡായ, ചില ലേബലുകളുടെ തനിപ്പകർപ്പ്, ഒരു ട്രീയുടെ ഏകപക്ഷീയമായ ഡയഗ്രം. ഈ ഡയഗ്രത്തിൽ, 7 എന്ന് ലേബൽ ചെയ്‌തിരിക്കുന്ന നോഡിന് 2, 10, 6 എന്നിങ്ങനെ ലേബൽ ചെയ്‌ത മൂന്ന് കുട്ടികളുണ്ട്, കൂടാതെ ഒരു പാരന്റ്, അതിനെ 2 എന്ന് ലേബൽ ചെയ്‌തിരിക്കുന്നു. മുകളിലുള്ള റൂട്ട് നോഡിന് പാരന്റില്ല.

കമ്പ്യൂട്ടർ സയൻസിൽ വ്യാപകമായി ഉപയോഗിക്കുന്ന ഒരു ഡാറ്റാ സ്ട്രക്ചറാണ് ട്രീ. നോഡുകളുടെ ഒരു കൂട്ടമാണ് ട്രീ.[1] ആരേഖത്തിന്റെ(ഗ്രാഫ്) മറ്റൊരു രൂപമായ ട്രീ ഒരു നോഡിൽ നിന്നും, റൂട്ട് നോഡിൽ നിന്നും തുടങ്ങി, മറ്റ് നോഡുകളിലേക്ക് കണ്ണി ചേർക്കപ്പെട്ട വിധത്തിലാണ്.

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

നോഡ് ഡെപ്ത്

[തിരുത്തുക]

ഒരു നോഡിൽ നിന്നും റൂട്ട് നോഡിലേക്കുള്ള ദൂരമാണ് പ്രസ്തുത നോഡിന്റെ ഡെപ്ത്(depth), ലിങ്കുകളുടെ/എഡ്ജുകളുടെ എണ്ണം വച്ചു നോഡിന്റെ ആഴം കണക്കാക്കാം.[2]

നോഡ് ഹൈറ്റ്

[തിരുത്തുക]

ഒരു നോഡിൽ നിന്നും ഏറ്റവും അകലെയുള്ള ലീഫിലേക്കുള്ള ദൂരമാണ് നോഡിന്റെ ഹൈറ്റ്(height). റൂട്ട് നോഡിന്റെ ഹൈറ്റ് ആയിരിക്കും ട്രീയുടെ ഉയരം.[2]

ട്രീ ട്രാവേർസൽ

[തിരുത്തുക]

ട്രീ ട്രാവേർസൽ(tree traversal), ട്രീസെർച്ച്(tree search) ട്രീയിലെ നോഡുകളിലൂടെ സഞ്ചരിക്കുന്ന പ്രക്രിയയാണ്. ഓരോ യാത്രയിലും ഒരു നോഡിലൂടെ ഒറ്റത്തവണയേ കടന്നു പോകൂ. [3]

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

അവലംബം

[തിരുത്തുക]
  1. https://www.programiz.com/dsa/trees
  2. 2.0 2.1 https://www.baeldung.com/cs/tree-depth-height-difference
  3. https://www.geeksforgeeks.org/tree-traversals-inorder-preorder-and-postorder/
"https://ml.wikipedia.org/w/index.php?title=ട്രീ_(ഡാറ്റാ_സ്ട്രക്ചർ)&oldid=3896194" എന്ന താളിൽനിന്ന് ശേഖരിച്ചത്