Prims алгоритми эмне үчүн колдонулат?
Prims алгоритми эмне үчүн колдонулат?

Video: Prims алгоритми эмне үчүн колдонулат?

Video: Prims алгоритми эмне үчүн колдонулат?
Video: Лабиринт / Поиск Пути / Волновой алгоритм / Labyrinth / Maze / Pathfinder / Wave Algorithm 2024, Ноябрь
Anonim

Информатика боюнча, Примдин (Ошондой эле Jarník катары белгилүү) алгоритм ачкөз болуп саналат алгоритм салмактуу багытталбаган график үчүн минималдуу даракты табат. Бул ар бир чокусун камтыган даракты түзгөн четтердин бир бөлүгүн табат дегенди билдирет, мында дарактын бардык четтеринин жалпы салмагы минималдаштырылган.

Мындан тышкары, Крускалдын алгоритми эмне үчүн колдонулат?

Крускалдын алгоритмин колдонот минималдуу узун дарак табуу үчүн ач көз мамиле. Крускалдын алгоритми ар бир түйүн көз карандысыз дарак катары мамиле кылат жана башка бардык варианттарга салыштырмалуу эң арзан баага ээ болгондо гана бири-бири менен байланыштырат.

Экинчиден, Dijkstra алгоритми эмне кылат? Dijkstra алгоритми Түйүндөр баштапкы түйүндөн жетүүгө мүмкүн болгон шартта, графиктин бир түйүнүнөн ошол эле графикалык маалымат түзүмүндөгү ар бир башка түйүнгө чейинки эң кыска жолду аныктоо үчүн колдонулушу мүмкүн. Dijkstra алгоритми кыска жолду табуу үчүн колдонсо болот.

Экинчиден, Prims жана Kruskal алгоритми кайсынысы жакшы?

Крускалдын алгоритми : аткарат жакшыраак типтүү эмес кырдаалдар (сейрек графиктер), анткени ал жөнөкөй маалымат структураларын колдонот. Примдин алгоритми : чокуларынан көп четтери бар чындап тыгыз графикке ээ болгондо чекте бир кыйла ылдамыраак.

Prims алгоритминин убакыт татаалдыгы кандай?

Ошентип, ал графиктин асуб-графигин аныктоо үчүн бүтүн сандардын бир массивин колдонот. The убакыттын татаалдыгы Бул O(VlogV +ElogV) = O(ElogV), аны менен бирдей кылат Крускальсалгоритм . Бирок, Примдин алгоритми Fibonacci Heaps (Cf Cormen) O(E + logV) чейин жакшыртууга болот.

Сунушталууда: