How to iterate an array from the middle outward (stepping left and right alternately) in Kotlin

1 Answer

0 votes
fun main() {

    // Array to iterate
    val arr: IntArray = intArrayOf(0, 1, 2, 3, 4, 5, 6, 7)
    val n: Int = arr.size

    // Middle index for even-sized arrays
    val mid: Int = n / 2

    // Left starts before the middle, right starts at the middle
    var left: Int = mid - 1
    var right: Int = mid

    // Iterate outward from the middle
    while (left >= 0 || right < n) {

        if (right < n) {
            print("${arr[right]} ")
            right++
        }

        if (left >= 0) {
            print("${arr[left]} ")
            left--
        }
    }
}


/*
run:

4 3 5 2 6 1 7 0

*/

 



answered Jun 29 by avibootz

Related questions

...