Kotlins program för att sortera element i lexikografisk ordning (ordboksordning)

I det här programmet lär du dig att sortera elementord i lexikografisk ordning med hjälp av en for-loop och om annat i Kotlin.

Exempel: Program för att sortera strängar i ordbokens ordning

 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 kör programmet blir resultatet:

 I lexikografisk ordning: C Java Python Ruby

I ovanstående program lagras listan med fem ord som ska sorteras i en variabel, ord.

Sedan slingrar vi igenom varje ord (ord (i)) och jämför det med alla ord (ord (j)) efter det i matrisen. Detta görs med hjälp av strängens CompareTo () -metod.

Om returvärdet för comparTo () är större än 0, måste det bytas i position, dvs. ord (i) kommer efter ord (j). Så i varje iteration innehåller ord (i) det tidigaste ordet.

Steg för utförande
Iteration Initiala ord i 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" )
Slutlig ( "C", "Java", "Ruby", "Python" ) 2 3 ( "C", "Java", "Python", "Ruby" )

Här är motsvarande Java-kod: Java-program för att sortera ord i lexikografisk ordning

Intressanta artiklar...