Inhoudsopgave:

Hoe wordt de complexiteit van de samenvoegsortering berekend?
Hoe wordt de complexiteit van de samenvoegsortering berekend?

Video: Hoe wordt de complexiteit van de samenvoegsortering berekend?

Video: Hoe wordt de complexiteit van de samenvoegsortering berekend?
Video: Giới thiệu về các thuật toán - Khoa học Máy tính tập 13 | Tri thức nhân loại 2024, December
Anonim

2 antwoorden. Het splitsen van een knoop A[L, R] in twee knopen kost R−L+1 tijd en dan samenvoegen de twee onderliggende knooppunten A[L, M] en A[M+1, R] nemen weer A[R−L+1] tijd in beslag. Dus voor elk knooppunt, het aantal bewerkingen dat de algoritme presteert is gelijk aan tweemaal de grootte van de array die overeenkomt met dat knooppunt.

Wat dit betreft, hoe werkt samenvoegen sorteren?

Zo gebruikt merge-sort verdeel-en-heers:

  1. Deel door het getal q van de positie halverwege p en r te vinden.
  2. Overwin door de subarrays recursief te sorteren in elk van de twee subproblemen die door de deelstap zijn ontstaan.
  3. Combineer door de twee gesorteerde subarrays weer samen te voegen tot de enkelvoudige gesorteerde subarray [p..

En wat is de grote O-complexiteit voor samenvoegsortering? Sorteren samenvoegen is een stal soort wat betekent dat hetzelfde element in een array hun oorspronkelijke posities ten opzichte van elkaar behoudt. Totale tijd complexiteit van Sorteren samenvoegen is O (nLog). Het is efficiënter omdat in het ergste geval ook de looptijd is O (nlogn) De ruimte complexiteit van Sorteren samenvoegen is O (N).

wat is de complexiteit van samenvoegen soort in het slechtste geval?

n*log(n)

Hoeveel vergelijkingen maakt merge sort?

Wanneer we geen elementen meer hebben in een van de lijsten, plaatsen we de resterende elementen in de laatste slots van de gesorteerd lijst. Als resultaat, samenvoegen twee lijsten met in totaal n elementen vereisen maximaal n-1 vergelijkingen.

Aanbevolen: