Tree vs Graph sa Data Structure
Dahil ang mga puno at graph ay ang mga non-linear na istruktura ng data na ginagamit upang malutas ang mga kumplikadong problema sa computer, ang pag-alam sa pagkakaiba sa pagitan ng tree at graph sa istraktura ng data ay kapaki-pakinabang. Ang parehong istruktura ng data ay kumakatawan sa mga data item sa mathematical form. Ang pangunahing layunin ng artikulo ay upang i-highlight ang kahalagahan ng mga nonlinear na istruktura ng data. Kasama rin dito ang pangunahing pagkakaiba sa pagitan ng dalawang istruktura ng data na ito.
Ano ang Puno sa Istruktura ng Data?
Ang Tree ay isang non-linear na istraktura ng data kung saan ang lahat ng item ng data ay nakaayos sa ilang pinagsunod-sunod na pagkakasunud-sunod. Tinutukoy ng puno ang isang may hangganang hanay ng mga item ng data. Ang bawat data item ay tinatawag na node. Mayroong isang espesyal na parent node na tinatawag ding root node. Ang lahat ng iba pang node ay child node o sub child node. Ang pangunahing layunin ng puno ay upang kumatawan sa hierarchical na relasyon sa pagitan ng iba't ibang mga item ng data. Ang normal na puno ay lumalaki sa itaas na direksyon, ngunit ang data structure tree ay lumalaki sa pababang direksyon. Ang lahat ng mga sub-node na nakakabit sa puno ay nahahati sa iba't ibang antas. Ang binary tree ay ang pinakakaraniwang halimbawa ng hindi linear na istraktura ng data. Ang pinakamataas na antas ng isang binary tree ay dalawa. Nangangahulugan itong maximum na dalawang node ang maaaring i-attach sa bawat parent node.
Ano ang Graph sa Data Structure?
Ang Graph ay isang sikat na non-linear na istraktura ng data na ginagamit upang malutas ang iba't ibang mga problema sa computer. Ginagamit ang mga ito sa disenyo ng iba't ibang mga laro at palaisipan. Maaaring hatiin ang mga graph sa maraming kategorya. Ito ay:
• Direktang Graph: Sa nakadirekta na graph, ang bawat gilid ay tinutukoy ng nakaayos na pares ng mga vertex.
• Hindi Nakadirekta na Graph: Sa hindi nakadirekta na graph, ang bawat gilid ay tinutukoy ng hindi nakaayos na pares ng vertices
• Nakakonektang graph: Sa konektadong path, mayroong path mula sa bawat vertex papunta sa bawat iba pang vertex.
• Hindi Nakakonektang Graph: Sa hindi nakakonektang graph, walang path mula sa anumang vertex patungo sa anumang iba pang vertex.
• Weighted Graph: Sa weighted graph, may nakakabit na weight sa gilid.
• Simple Graph o Multi Graph
Mga pagkakatulad sa pagitan ng Tree at Graph sa Data Structure
• Parehong hindi linear na istraktura ng data ang mga puno at graph na ginagamit upang malutas ang mga kumplikadong problema sa computer.
• Ang parehong istruktura ng data ay gumagamit ng parent node at maraming sub-node.
Ano ang pagkakaiba ng Tree at Graph sa Data Structure?
• Ang puno ay itinuturing na isang espesyal na kaso ng graph. Tinatawag din itong minimally connected graph.
• Ang bawat puno ay maaaring ituring na isang graph, ngunit ang bawat graph ay hindi maaaring ituring bilang isang puno.
• Hindi available ang mga self-loop at circuit sa tree tulad ng sa mga graph.
• Para sa pagdidisenyo ng tree, kailangan mo ng parent node at iba't ibang sub-node. Para sa pagdidisenyo ng isang graph, kailangan mo ng mga vertex at mga gilid. Ang gilid ay isang pares ng mga vertex.
Ang talakayan sa itaas ay naghihinuha na ang puno at graph ay ang pinakasikat na istruktura ng data na ginagamit upang malutas ang iba't ibang kumplikadong problema. Ang mga graph ay isang mas sikat na istruktura ng data na ginagamit sa pagdidisenyo ng computer, mga pisikal na istruktura at agham ng engineering. Karamihan sa mga puzzle ay idinisenyo sa tulong ng graph data structure. Ang problema sa pinakamaikling distansya ay ang pinakakaraniwang ginagamit na istraktura ng data. Sa problemang ito, kailangan nating kalkulahin ang pinakamaikling distansya sa pagitan ng dalawang vertice.
Karagdagang Pagbabasa: