Агуулгын хүснэгт:

Нэгтгэх гэж яаж бичих вэ?
Нэгтгэх гэж яаж бичих вэ?
Anonim

Эрэмбэлэх

  1. Эрэмбэлэгдээгүй жагсаалтыг тус бүр элемент агуулсан дэд жагсаалтуудад хуваа.
  2. Хоёр сингл жагсаалтын зэргэлдээ хосуудыг ав нэгтгэх тэдгээрийг 2 элементийн жагсаалтыг бүрдүүлэх. N. одоо 2 хэмжээтэй жагсаалт руу хөрвүүлэх болно.
  3. Процедурыг нэг болтол давтана эрэмбэлсэн олж авсан жагсаалт.

Жишээ нь нэгтгэх эрэмбэ гэж юу болохыг бас мэдэх үү?

Ан жишээ -ийн нэгтгэх төрөл . Эхлээд жагсаалтыг хамгийн жижиг нэгжид (1 элемент) хувааж, дараа нь элемент бүрийг зэргэлдээх жагсаалттай харьцуул ангилах болон нэгтгэх хоёр зэргэлдээ жагсаалт. Эцэст нь бүх элементүүд байна эрэмбэлсэн болон нэгтгэсэн . Нэгтгэх төрөл Энэ нь 1945 онд Жон фон Нейманн зохион бүтээсэн хуваах ба ялах алгоритм юм.

Үүний нэгэн адил, нэгтгэх сортыг хаана ашигладаг вэ? -ийн програмууд Merge Sort Merge Sort -д ашигтай ангилах O(nLogn) хугацаанд холбогдсон жагсаалтууд. Холбосон жагсаалтын хувьд массив болон холбосон жагсаалтуудын санах ойн хуваарилалтын зөрүүгээс шалтгаалж өөр өөр байдаг. Массивуудаас ялгаатай нь холбогдсон жагсаалтын зангилаанууд санах ойд зэргэлдээ ороогүй байж болно.

Нэгтгэх гэж юу вэ, энэ нь хэрхэн ажилладаг вэ?

Эрэмбэлэх хуваах ба ялах алгоритм юм. Энэ ажилладаг Асуудлыг ижил буюу холбогдох төрлийн хоёр буюу түүнээс дээш дэд асуудал болгон рекурсив байдлаар задалж, тэдгээрийг шууд шийдвэрлэхэд хялбар болгох хүртэл. Тэгэхээр Эрэмбэлэх эхлээд массивыг тэнцүү хагас болгон хувааж, дараа нь a-д нэгтгэнэ эрэмбэлсэн арга барил.

Нэгтгэх гэж юу гэсэн үг вэ?

нэгтгэх төрөл . (алгоритм) Тодорхойлолт : А ангилах байх зүйлсийг хуваах алгоритм эрэмбэлсэн рекурсив байдлаар хоёр бүлэгт хуваана төрөл бүлэг бүр болон нийлдэг тэднийг финалд шалгаруулж, эрэмбэлсэн дараалал. Ажиллах хугацаа нь Θ(n log n).

Зөвлөмж болгож буй: