Har du noen gang hørt om begrepet “Divide and Conquer”? Denne artikkelen er ganske spesifikt basert på denne tilnærmingen. Slå sammen Sorter er en 'del og erobre' -algoritme der vi først deler problemet i delproblemer for deretter å slå dem sammen for å erobre løsningen vår. Her er en fullstendig oversikt over begrepet merge sort i J .
Hva er merge sort i Java?
Merge sort er en av de populære sorteringsalgoritmer tilgjengelig og det følger en splitt og erobre tilnærming. Et problem er delt inn i underproblemer og kombinert sammen for å nå den endelige løsningen!
Nå, hva skjer egentlig under arbeidet med sammenslåing? La oss forstå i detalj.
Arbeid av sammenslåing
Det er to trinn fulgt av sammenslåingssorteringen under prosessen:
java-kommando for å avslutte programmet
- Dele opp: I dette trinnet er inngangsmatrisen delt inn i to halvdeler, pivoten er midtpunktet til matrisen. Dette trinnet utføres rekursivt for alle halvpartene til det ikke er flere halvdeler å dele videre.
- Erobre: I dette trinnet sorterer og slår vi sammen de delte matriser fra bunn til topp og når mot vårt sorterte utvalg.
Denne tilnærmingen hjelper deg med å enkelt sortere delene av problemene først og derved nå løsningen.
La meg vise deg en billedlig fremstilling av sammenslåingssort.
Eksempel: Diagram
Her så du hvordan ser en sammenslåingssort ut. Hovedbegrepet med sammenslåing er at det tar kortere tid å sortere. Nå går vi videre mot implementeringsdelen!
Gjennomføring
pakke MyPackage offentlig klasse MergeSort {void merge (int arr [], int beg, int mid, int end) {int l = mid - beg + 1 int r = end - mid int LeftArray [] = new int [l] int RightArray [] = ny int [r] for (int i = 0 iProduksjon:
Sortert utvalg
en
4
17
22
2. 3
40
Fire fem
51
55
90Slik ser en Java-kode som viser sammenslåingssort ut. Går videre mot neste segment.
Kompleksitet
Kompleksitet er todelt i to typer: Tidskompleksitet og Romkompleksitet. Når det gjelder flettesortering, er dataene som vist nedenfor:
Kompleksitet Beste tilfelle
Gjennomsnittlig sak
Verste tilfelle
Tidskompleksitet
O (n log n)
O (n log n)
O (n log n)
Romkompleksitet
-
-
marionett vs ansible vs kokkPå)
Med dette skal jeg avslutte denne artikkelen. Jeg håper innholdet som er forklart ovenfor, gir merverdi for din Java-kunnskap. Vi vil fortsette å utforske Java-verdenen sammen. Følg med!
Sjekk ut av Edureka, et pålitelig online læringsfirma med et nettverk med mer enn 250 000 fornøyde elever spredt over hele verden. Edurekas Java J2EE- og SOA-opplæring og sertifiseringskurs er designet for studenter og fagpersoner som ønsker å være Java-utvikler. Kurset er designet for å gi deg et forsprang i Java-programmering og trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.
Har du spørsmål til oss? Vennligst nevn det i kommentarfeltet til denne “ Slå sammen sortering i Java ”-Bloggen, og vi kommer tilbake til deg så snart som mulig.