add new solutions

This commit is contained in:
kanna5 2025-12-25 14:22:40 +09:00
parent 475d438db4
commit 1433bf4850
17 changed files with 394 additions and 0 deletions

View file

@ -0,0 +1,26 @@
package q108
type TreeNode struct {
Val int
Left *TreeNode
Right *TreeNode
}
func sortedArrayToBST(nums []int) *TreeNode {
if len(nums) == 0 {
return nil
}
if len(nums) == 1 {
return &TreeNode{Val: nums[0]}
}
l, r := nums[:len(nums)/2], nums[len(nums)/2+1:]
m := nums[len(nums)/2]
return &TreeNode{
Val: m,
Left: sortedArrayToBST(l),
Right: sortedArrayToBST(r),
}
}
var _ = sortedArrayToBST

View file

@ -0,0 +1,14 @@
package q120
func minimumTotal(triangle [][]int) int {
size := len(triangle)
for row := size - 2; row >= 0; row-- {
for i := range triangle[row] {
triangle[row][i] += min(triangle[row+1][i], triangle[row+1][i+1])
}
}
return triangle[0][0]
}
var _ = minimumTotal

View file

@ -0,0 +1,11 @@
package q136
func singleNumber(nums []int) int {
x := 0
for _, num := range nums {
x ^= num
}
return x
}
var _ = singleNumber

View file

@ -0,0 +1,13 @@
package q190
func reverseBits(n int) int {
ret := 0
for i := range 32 {
if n|(1<<i) == n {
ret |= 1 << (31 - i)
}
}
return ret
}
var _ = reverseBits

View file

@ -0,0 +1,13 @@
package q191
func hammingWeight(n int) int {
num := 0
for ; n > 0; n >>= 1 {
if n|1 == n {
num++
}
}
return num
}
var _ = hammingWeight