Logo mn.boatexistence.com

Нооролдсон модонд уу?

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

Нооролдсон модонд уу?
Нооролдсон модонд уу?

Видео: Нооролдсон модонд уу?

Видео: Нооролдсон модонд уу?
Видео: Женщина боролась за жизнь. Затем появился медведь и сделал неожиданное 2024, Долдугаар сарын
Anonim

Ноолуур гэдэг нь модны бүх зангилаа тодорхой дарааллаар байрласан модонд суурилсан өгөгдлийн бүтэц юм. Жишээлбэл, хэрэв -ийн эх зангилаа бол -ын утга нь утгын хувьд тодорхой дарааллыг дагаж, модны дагуу ижил дарааллаар дагах болно.

Өгөгдлийн бүтэц дэх овоолгын мод гэж юу вэ?

Тодорхойлолт: Бөөгнөрөл гэдэг нь овоолгын шинж чанарыг хангасан мод дээр суурилсан тусгай өгөгдлийн бүтэц: хэрэв B нь A-ийн хүүхэд зангилаа бол түлхүүр(A) ≥ түлхүүр(B). Энэ нь хамгийн том түлхүүртэй элемент үргэлж эх зангилаанд байдаг гэсэн үг бөгөөд ийм овоолгыг заримдаа max-heap гэж нэрлэдэг. Мэдээжийн хэрэг, бас бага хэмжээний бөөгнөрөл бий.

Ноолуур гэж юуг тайлбарлах вэ?

Нуруу гэдэг нь утга агуулсан "зангилаа"-аас тогтсон өгөгдлийн бүтэц… Нэг овоолгын зангилаа бүр хоёр буюу түүнээс олон хүүхэд зангилаатай (мөн "хүүхдүүд" гэж нэрлэдэг) байж болох ч ихэнх бөөгнөрөл нь зангилаа бүрийг хоёр хүүхэдээр хязгаарладаг. Эдгээр төрлийн овоолгыг хоёртын овоо гэж нэрлэдэг бөгөөд тэдгээрийг эрэмбэлэгдсэн өгөгдлийг хадгалахад ашиглаж болно.

Хоёртын модыг юу нь овоо болгодог вэ?

Хоёртын овоолгыг хоёр нэмэлт хязгаарлалт бүхий хоёртын мод гэж тодорхойлдог: … Нуруулсны шинж чанар: зангилаа бүрт хадгалагдсан түлхүүр нь (≥)-аас их эсвэл тэнцүү эсвэл түүнээс бага эсвэл тэнцүү байна. (≤) зангилааны хүүхдүүдийн түлхүүрүүд, нийт дарааллын дагуу.

Хэрхэн овоолгын мод хийдэг вэ?

Алхам 1 − Нуруулсны төгсгөлд шинэ зангилаа үүсгэ. Алхам 2 - Зангилаанд шинэ утгыг оноо. Алхам 3 - Энэ хүүхдийн зангилааны утгыг эцэг эхтэй нь харьцуул. Алхам 4 − Хэрэв эцэг эхийн үнэ цэнэ хүүхдээс бага байвал тэдгээрийг солино уу.

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