fun main(arg:Array & lt; String & gt){
val data = mutableListOf & ltInt & gt(2 1,5,0,3, 1, 1, 1 1, 17,5, 4, 99,35,6, 47, 52, 100);
RadixSort (data);
Print data
}
fun radix sort(data:mutable list & lt; Int & gt){
val bucket= MutableList( 10,{ I-& gt; Variable list & ltInt & gt()});
var div = 1;
Do {
var hasBigger = false
var nextdiv=div* 10
For (e in data) (
If (! Hasbigger & Ampe & gt = nextdiv) hasbigger = true;
val row = bucket . get(e/div % 10);
row . add(e);
}
div = nextdiv
data . clear();
For (line in bucket) (
for(e in row)data . add(e);
row . clear();
}
} while(has bigger);
}
Output:
[0, 1, 1, 3, 4, 5, 5, 6, 1 1, 17, 2 1, 35, 47, 52, 99, 100]