I have a simple for loop in go which iterates through a slice of integers and changes the position of the current if next is smaller basically a sort, but it keeps showing me this error which says
panic: runtime error: index out of range
Here is the code:
func sort(n int, l []int) interface{} {
fmt.Println(l)
if d == false {
d = true
for i := range l {
n := i + 1
t := l[i]
l[i] = l[n]
l[n] = t
arr = l
d = false
}
return sort(n, arr)
}
return arr
}
Returned arr is declared as a global variable. Here is the error:
panic: runtime error: index out of range
goroutine 1 [running]:
main.troubleSort(0x5, 0xc42001a150, 0x5, 0x5, 0x0, 0xc42000e1d0)
/home/julkreshpaj/codejam/Trouble Sort/Solution.go:21 +0x1c1
main.main()
/home/julkreshpaj/codejam/Trouble Sort/Solution.go:60 +0x82
exit status 2