add new solutions
This commit is contained in:
parent
f960020cb4
commit
14cd11f1c7
4 changed files with 155 additions and 0 deletions
37
solutions/5/q530/solution.go
Normal file
37
solutions/5/q530/solution.go
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
package q530
|
||||
|
||||
import "math"
|
||||
|
||||
type TreeNode struct {
|
||||
Val int
|
||||
Left *TreeNode
|
||||
Right *TreeNode
|
||||
}
|
||||
|
||||
func getMinimumDifference(root *TreeNode) int {
|
||||
minDiff := math.MaxInt
|
||||
var last *int
|
||||
|
||||
var check = func(num int) {
|
||||
if last == nil {
|
||||
last = &num
|
||||
return
|
||||
}
|
||||
minDiff = min(minDiff, num-*last)
|
||||
*last = num
|
||||
}
|
||||
var traverse func(node *TreeNode)
|
||||
traverse = func(node *TreeNode) {
|
||||
if node == nil {
|
||||
return
|
||||
}
|
||||
traverse(node.Left)
|
||||
check(node.Val)
|
||||
traverse(node.Right)
|
||||
}
|
||||
traverse(root)
|
||||
|
||||
return minDiff
|
||||
}
|
||||
|
||||
var _ = getMinimumDifference
|
||||
Loading…
Add table
Add a link
Reference in a new issue