Slik sorterer du en koblet liste i Java

Forfatter: Monica Porter
Opprettelsesdato: 21 Mars 2021
Oppdater Dato: 19 November 2024
Anonim
Java Tech Talk: Telegram bot on java for 1 hour
Video: Java Tech Talk: Telegram bot on java for 1 hour

Innhold

Slik organiserer du en koblet liste i Java. En lukket liste er en av de viktigste typer datastrukturer i programmeringsverdenen. Det er en organisasjon av noder som inneholder data og referanser som peker til neste knutepunkt. For å sortere en koblet liste i Java, er det en listeklasse som fungerer med samlingsrammen, som implementerer algoritmer som en bestilling.


retninger

Organisere Linked List i Java (forhørsbilde av danimages fra Fotolia.com)

    Sorter en lenket liste i Java

  1. Erklær den koblede listen ved å opprette et nytt LinkedList-objekt og tilordne en LinkedList-variabel. En LinkedList kommer fra den generiske listen klassen, så en metode som aksepterer en liste, vil også bli akseptert av LinkedList-objektet. "" LinkedList l = new LinkedList (); ""

  2. Legg til objekter av samme type (for eksempel heltall) til listen. Disse kan være objekter av noe slag, men for å sortere den lenkede listen, må alle være av samme type.

  3. Bruk List.addFirst-metoden til å sette inn nye objekter øverst i listen, slik at alle objekter du legger til, er i motsatt rekkefølge. Hvis du vil legge dem til slutten av listen, bruker du List.addLast-metoden. "" list.addFirst (1); list.addFirst (3); list.addFirst (2); "


  4. Bruk en iterator til å iterere gjennom listen og skriv ut den før og etter at du ser hva sorteringsmetoden gjør. "" for (Iterator i = list.iterator (); i.hasNext ();) {System.out.println (i.next ());} "

    Sorter med standard og tilpassede komparatorer

  1. Sorter listen med standardkomparatoren. En komparator er en gjenstand som sammenligner to objekter. Standardkomparatorobjektet bruker den mindre operatøren, så listen er bestilt i stigende rekkefølge. For å sortere listen, bruk den statiske samlingen.sort-metoden. "" Collections.sort (liste); ""

  2. y) {return -1; "> Bestil listen med en tilpasset comparer ved å skrive en klasse som implementerer et sammenligningsgrensesnitt og overføre det til en instans som et bestillingsargument. Klassen som implementerer komparatoren, har bare til å implementere den enkle "offentlig klasse GreaterThan implementerer Comparator annet hvis (x == y) {return 0;} else {return 1;}}}"


  3. Bruk anropet til Collections.sort ved å sende en ny forekomst av GreaterThan som et annet argument. Siden objektene som er større vil være foran de andre, vil listen bli sortert i synkende rekkefølge i stedet for stigende rekkefølge. Alternativt, hvis du sorterer en liste over objekter fra en egendefinert klasse som du har skrevet deg selv, kan denne klassen implementere Sammenligningsgrensesnittet i stedet for å bruke den separate Comparator-klassen. "" Collections.sort (liste, ny GreaterThan ()); ""

tips

  • Det er problematisk å bruke et heltall for å iterere i kretsen og List.size () -metoden. Iterering av en lukket liste er en kostbar beregningsoperasjon. Når du bruker en indeksoperatør (som l [2]) som i en kommando, må Java lukte over listen til den når indeks 2. For små lister er dette et problem, men med noe stort, bruker indeksoperatøren til å iterere blir til noe som krever mange ressurser.
  • Uansett hvordan List-objektet er implementert, siden LinkedList implementerer det samme grensesnittet.
  • Sammenligningsmetoden bør returnere til -1 hvis arg0 er bestilt før arg1, 0 hvis det er bestilt like, og 1 hvis arg1 er bestilt før arg0.

advarsel

  • Iteratorobjektet sikrer at hver node i listen bare besøker en gang. Dette er viktig å huske, siden det å besøke oss uten behov kunne misbruke datastrukturene til det punktet der programmet virker feil.

Hunder er nygjerrige dyr og pier ofte pielige og ikke-pielige ting men de utforker in egen verden. Noen ganger kan die tingene itte fat i halen. Hunder med fremmedlegemer om er fanget i halen, riikere...

LP (Liquefied Petroleum) er en komprimert ga om er lett å tranportere og lagre i metallbeholdere. Den bruke om kokega, amt drivtoff til bærbare griller. Det er enkelt å jekke ganivå...

Pass På Å Lese