1. Introduction
Sorting is an elemental procedure in computer science and finds applications in various domains like data analytics, e-commerce, and database systems. In Kotlin, array manipulation is streamlined and user-friendly. In this guide, we'll leverage Kotlin's prowess to sort an array in ascending order.
2. Program Overview
Our Kotlin program will:
1. Initialize an array of numbers.
2. Implement the sorting mechanism to arrange numbers in ascending order.
3. Showcase the sorted array to the user.
3. Code Program
fun main() {
// Establish an array of numbers
val numbers = arrayOf(58, 13, 99, 45, 27, 3, 79)
// Implement the sorting technique
for (i in numbers.indices) {
for (j in 0 until numbers.size - i - 1) {
if (numbers[j] > numbers[j + 1]) {
// Swap the numbers if they're out of order
val temp = numbers[j]
numbers[j] = numbers[j + 1]
numbers[j + 1] = temp
}
}
}
// Print the sorted array
println("Array sorted in ascending order: ${numbers.joinToString()}")
}
Output:
Array sorted in ascending order: 3, 13, 27, 45, 58, 79, 99
4. Step By Step Explanation
Initialization of the Array: val numbers = arrayOf(58, 13, 99, 45, 27, 3, 79)
Bubble Sort Implementation:
Bubble Sort is a simple sorting algorithm that repeatedly steps through the list, compares adjacent elements, and swaps them if they are in the wrong order. The pass through the list is repeated until the list is sorted.
// Implement the sorting technique
for (i in numbers.indices) {
for (j in 0 until numbers.size - i - 1) {
if (numbers[j] > numbers[j + 1]) {
// Swap the numbers if they're out of order
val temp = numbers[j]
numbers[j] = numbers[j + 1]
numbers[j + 1] = temp
}
}
}
The outer for loop runs through each index in the array. As the sorting progresses, the largest elements get "bubbled up" to the end of the array. Hence, after each iteration of the outer loop, we know the end elements are in their correct position.
The inner for loop compares each pair of adjacent elements and swaps them if they're out of order (i.e., the left number is greater than the right number).
With each iteration of the inner loop, the largest number in the current subset gets moved (or bubbled) to the correct position in the array.
Printing the Sorted Array:
println("Array sorted in ascending order: ${numbers.joinToString()}")
Comments
Post a Comment
Leave Comment