Pagkakaiba sa pagitan ng Tree at Graph

May -Akda: Laura McKinney
Petsa Ng Paglikha: 3 Abril 2021
I -Update Ang Petsa: 13 Mayo 2024
Anonim
Likas na Seleksyon, Pagbagay at Ebolusyon
Video.: Likas na Seleksyon, Pagbagay at Ebolusyon

Nilalaman


Ang puno at grapiko ay dumating sa ilalim ng kategorya ng di-linear na istraktura ng data kung saan ang puno ay nag-aalok ng isang napaka-kapaki-pakinabang na paraan ng kumakatawan sa isang relasyon sa pagitan ng mga node sa isang hierarchical na istraktura at grap sumusunod sa isang modelo ng network. Ang puno at graph ay naiiba sa katotohanan na ang isang istraktura ng puno ay dapat na konektado at hindi maaaring magkaroon ng mga loop habang sa grap ay walang ganoong mga paghihigpit.

Ang isang non-linear na istraktura ng data ay binubuo ng isang koleksyon ng mga elemento na ipinamamahagi sa isang eroplano na nangangahulugang walang ganoong pagkakasunud-sunod sa pagitan ng mga elemento dahil umiiral ito sa isang guhit na istraktura ng data.

    1. Tsart ng paghahambing
    2. Kahulugan
    3. Pangunahing Pagkakaiba
    4. Konklusyon

Tsart ng paghahambing

Batayan para sa paghahambingPunoGraph
LandasIsa lamang sa pagitan ng dalawang mga vertice.Pinapayagan ang higit sa isang landas.
Node ng ugatMayroon itong eksaktong isang ugat node.Ang graphic doesnt ay may root node.
Mga LoopsWalang mga pinahihintulutan.Ang mga graphic ay maaaring magkaroon ng mga loop.
Pagiging kumplikadoHindi gaanong kumplikadoMas kumplikado nang medyo
Mga diskarte sa traversalPre-order, In-order at Post-order.Breadth-unang paghahanap at lalim-unang paghahanap.
Bilang ng mga gilidn-1 (kung saan n ang bilang ng mga node)Hindi tinukoy
Uri ng modeloHierarkikaNetwork


Kahulugan ng Puno

A puno ay isang hangganan na koleksyon ng mga item ng data na karaniwang tinatawag na node. Tulad ng nabanggit sa itaas na ang isang puno ay isang non-linear na istraktura ng data na nag-aayos ng mga item ng data sa pinagsunod-sunod na pagkakasunud-sunod. Ginagamit ito upang ipakita ang isang hierarchical na istraktura sa pagitan ng iba't ibang mga elemento ng data at isinaayos ang data sa mga sanga na nauugnay ang impormasyon. Ang pagdaragdag ng isang bagong gilid sa isang puno ay nagreresulta sa isang pagbuo ng loop o circuit.

Mayroong ilang mga uri ng mga puno tulad ng isang punungkahoy ng binary, punungkahoy ng binary paghahanap, puno ng AVL, may sinulid na punong kahoy, B-tree, atbp Data compression, file storage, pagmamanipula ng aritmetikong expression at mga puno ng laro ay ilan sa aplikasyon ng puno istruktura ng data.

Mga Katangian ng puno:

  • May itinalagang node sa tuktok ng puno na kilala bilang isang ugat ng puno.
  • Ang natitirang mga item ng data ay nahahati sa mga hindi sinasadyang mga subset na tinutukoy bilang subtree.
  • Ang puno ay pinalawak sa taas patungo sa ilalim.
  • Ang isang puno ay dapat na konektado na nangangahulugang dapat mayroong isang landas mula sa isang ugat sa lahat ng iba pang mga node.
  • Hindi ito naglalaman ng anumang mga loop.
  • Ang isang puno ay may n-1 na mga gilid.

Mayroong iba't ibang mga term na nauugnay sa mga puno tulad ng terminal node, gilid, antas, degree, lalim, kagubatan, atbp Kabilang sa mga term na ito, ang ilan sa mga ito ay inilarawan sa ibaba.


  • Edge - Isang linya na kumokonekta sa dalawang node.
  • Antas - Ang isang puno ay nahati sa mga antas sa isang paraan na ang ugat ng node ay nasa antas na 0. Kung gayon, ang agarang mga anak nito ay nasa antas 1, at ang mga agarang anak nito ay nasa antas 2 at iba pa hanggang sa terminal o dahon node.
  • Degree - Ito ang bilang ng mga subtrees ng isang node sa isang naibigay na puno.
  • Lalim - Ito ang pinakamataas na antas ng anumang node sa isang naibigay na puno at kilala rin bilang taas.
  • Terminal node - Ang pinakamataas na antas ng node ay ang terminal node habang ang iba pang mga node maliban sa mga terminal at root node ay kilala bilang mga non-terminal node.

Kahulugan ng Graph

A grapiko ay din ng isang matematika na di-linear na istraktura ng data na maaaring kumatawan sa iba't ibang uri ng pisikal na istraktura. Binubuo ito ng isang pangkat ng mga vertices (o mga node) at hanay ng mga gilid na kumokonekta sa dalawang mga vertice. Ang mga Vertice sa graph ay kinakatawan bilang punto o bilog at mga gilid ay ipinapakita bilang mga arko o mga linya ng linya. Ang isang gilid ay kinakatawan ng E (v, w) kung saan ang v at w ang mga pares ng mga vertice. Ang pag-alis ng isang gilid mula sa isang circuit o konektadong graph ay lumilikha ng isang subgraph na isang puno.

Ang mga graph ay naiuri sa iba't ibang mga kategorya tulad ng nakadirekta, hindi nakadirekta, konektado, hindi konektado, simple at multi-grap. Ang network ng computer, sistema ng transportasyon, grap sa network ng social, mga de-koryenteng circuit at pagpaplano ng proyekto ay ilan sa mga aplikasyon ng istruktura ng data ng grapiko. Ginagamit din ito sa pamamaraang pamamahala na pinangalanan bilang PERT (diskarte sa pagsusuri at pagsusuri ng programa) at CPM (kritikal na pamamaraan ng landas) kung saan nasuri ang istraktura ng grapiko.

Mga katangian ng isang graph:

  • Ang isang vertex sa isang graph ay maaaring konektado sa anumang bilang ng iba pang mga vertice gamit ang mga gilid.
  • Ang isang gilid ay maaaring mai-bid o maituro.
  • Ang isang gilid ay maaaring timbangin.

Sa graph ay gumagamit din kami ng iba't ibang mga termino tulad ng mga katabing mga patayo, landas, ikot, degree, konektadong grapiko, kumpletong grapiko, may bigat na graph, atbp Hayaan ang maunawaan ang ilan sa mga salitang ito.

  • Mga katabi ng mga patayo - Ang isang vertex a ay katabi ng vertex b kung mayroong isang gilid (a, b) o (b, a).
  • Landas - Ang isang landas mula sa isang random na vertex w ay isang katabing pagkakasunud-sunod ng mga vertice.
  • Ikot - Ito ay isang landas kung saan ang una at huling patayo ay pareho.
  • Degree - Ito ay isang bilang ng mga pangyayari sa gilid sa isang magulo.
  • Nakakonektang grapiko - Kung mayroong isang landas mula sa isang random na vertex sa anumang iba pang mga vertex, kung gayon ang graph na ito ay kilala bilang isang konektadong graph.
  1. Sa isang puno ay mayroon lamang isang landas sa pagitan ng anumang dalawang mga vertice samantalang ang isang graph ay maaaring magkaroon ng unidirectional at mga pathirectional path sa pagitan ng mga node.
  2. Sa puno, mayroong eksaktong isang node ng ugat, at ang bawat bata ay maaaring magkaroon lamang ng isang magulang. Tulad ng laban, sa isang graph, walang konsepto ng root node.
  3. Ang isang puno ay hindi maaaring magkaroon ng mga loop at self-loops habang ang graph ay maaaring magkaroon ng mga loop at self-loops.
  4. Ang mga graphic ay mas kumplikado dahil maaari itong magkaroon ng mga loop at self-loops. Sa kaibahan, ang mga puno ay simple kung ihahambing sa grap.
  5. Ang punungkahoy ay pinalalakas gamit ang pre-order, in-order at post-order na mga diskarte. Sa kabilang banda, para sa graphic traversal, gumagamit kami ng BFS (Breadth First Search) at DFS (Lalim ng Unang Paghahanap).
  6. Ang isang puno ay maaaring magkaroon ng n-1 gilid. Sa kabilang banda, sa grapiko, walang natukoy na bilang ng mga gilid, at nakasalalay ito sa grap.
  7. Ang isang puno ay may hierarchical na istraktura samantalang ang graph ay may modelo ng network.

Konklusyon

Ang graphic at puno ay ang non-linear na istraktura ng data na ginagamit upang malutas ang iba't ibang mga kumplikadong problema. Ang isang graph ay isang pangkat ng mga vertice at mga gilid kung saan ang isang gilid ay nagkokonekta ng isang pares ng mga vertice samantalang ang isang puno ay itinuturing bilang isang minimally na konektado na graph na dapat na konektado at libre mula sa mga loop.