[Golang] How to get the diagonal difference: Problem Solving

Kuldeep Singh
1 min readOct 10, 2021

--

Hi,
So today we’re about to cover up another problem solving question which is how we can find the diagonal difference and we are going to cover up this problem via two ways.

  1. Using Loop
  2. Using Recursive function.

Let’s see the question first

Given a matrix of n X n. The task is to calculate the absolute difference between the sums of its diagonal.

Now Let’s start Writing Code

  1. Using Loop
func DiagonalDifference(arr [][]int) int {
d1 := []int{}
d2 := []int{}
d1Sum := 0
d2Sum := 0
for x := range arr {
for y := range arr {
if x == y {
d1 = append(d1, arr[x][y])
d1Sum += arr[x][y]
}

if x == len(arr)-y-1 {
d2 = append(d2, arr[x][y])
d2Sum += arr[x][y]
}
}
}
fmt.Println("Left Diagonal Values", d1)
fmt.Println("Right Diagonal Values", d2)

return int(math.Abs(float64(d1Sum) - float64(d2Sum)))
}

Find the code from here for recursive method:
Read More

Also Subscribe My Channel as well :)
myChannel

Thanks for Reading

--

--

Kuldeep Singh
Kuldeep Singh

No responses yet