...

/

Solution Review: Array Index Maximum Difference

Solution Review: Array Index Maximum Difference

This review provides a detailed analysis of different ways to solve the array index maximum difference.

First solution

We use a brute force approach in which we find indices i and j such that arr[j] > arr[i]. We’ll use two loops, one to select the index i and one to traverse from the size of the array to ithi^{th} index.

Coding exercise

Press + to interact
package main
import("fmt")
func ArrayIndexMaxDiff(arr []int, size int) int {
maxDiff := -1
j := 0
for i := 0; i < size; i++ {
j = size - 1
for j > i {
if arr[j] > arr[i] {
if maxDiff < (j - i) {
maxDiff = (j - i)
}
break
}
j -= 1
}
}
return maxDiff
}
//Testing code
func main() {
arr := []int{33, 9, 10, 3, 2, 60, 30, 33, 1}
fmt.Println("ArrayIndexMaxDiff : ", ArrayIndexMaxDiff(arr, len(arr)))
}

Complexity analysis

Its time complexity is ...