Kotlin-program for å sortere elementer i leksikografisk rekkefølge (ordbokrekkefølge)

I dette programmet lærer du å sortere elementordene i leksikografisk rekkefølge ved hjelp av en for-loop og hvis annet i Kotlin.

Eksempel: Program for å sortere strenger i ordbokrekkefølge

 fun main(args: Array) ( val words = arrayOf("Ruby", "C", "Python", "Java") for (i in 0… 2) ( for (j in i + 1… 3) ( if (words(i).compareTo(words(j))> 0) ( // swap words(i) with words(j( val temp = words(i) words(i) = words(j) words(j) = temp ) ) ) println("In lexicographical order:") for (i in 0… 3) ( println(words(i)) ) )

Når du kjører programmet, vil utdataene være:

 I leksikografisk rekkefølge: C Java Python Ruby

I programmet ovenfor lagres listen over 5 ord som skal sorteres i en variabel, ord.

Deretter løper vi gjennom hvert ord (ord (i)) og sammenligner det med alle ord (ord (j)) etter det i matrisen. Dette gjøres ved å bruke strengens comparTo () -metode.

Hvis returverdien til comparTo () er større enn 0, må den byttes i posisjon, dvs. ord (i) kommer etter ord (j). Så i hver iterasjon inneholder ord (i) det tidligste ordet.

Utførelse trinn
Iterasjon Innledende ord Jeg j ord ()
1 ( "Ruby", "C", "Python", "Java" ) 0 1 ( "C", "Ruby", "Python", "Java" )
2 ( "C", "Ruby", "Python", "Java" ) 0 2 ( "C", "Ruby", "Python", "Java" )
3 ( "C", "Ruby", "Python", "Java" ) 0 3 ( "C", "Ruby", "Python", "Java" )
4 ( "C", "Ruby", "Python", "Java" ) 1 2 ( "C", "Python", "Ruby", "Java" )
5 ( "C", "Python", "Ruby", "Java" ) 1 3 ( "C", "Java", "Ruby", "Python" )
Endelig ( "C", "Java", "Ruby", "Python" ) 2 3 ( "C", "Java", "Python", "Ruby" )

Her er ekvivalent Java-kode: Java-program for å sortere ord i leksikografisk rekkefølge

Interessante artikler...