Skip to content

Commit fdcae39

Browse files
author
lijinglin.3
committed
update
1 parent fca838a commit fdcae39

File tree

7 files changed

+50
-37
lines changed

7 files changed

+50
-37
lines changed

go.mod

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
module github.com/lijinglin3/algorithm-go
22

3-
go 1.16
3+
go 1.19
44

5-
require github.com/stretchr/testify v1.7.0
5+
require github.com/stretchr/testify v1.8.2
6+
7+
require (
8+
github.com/davecgh/go-spew v1.1.1 // indirect
9+
github.com/pmezard/go-difflib v1.0.0 // indirect
10+
gopkg.in/yaml.v3 v3.0.1 // indirect
11+
)

go.sum

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
1-
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
21
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
2+
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
3+
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
34
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
45
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
56
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
6-
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
7-
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
7+
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
8+
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
9+
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
10+
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
11+
github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8=
12+
github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
813
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
914
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
10-
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
1115
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
16+
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
17+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

leetcode/0110.balanced-binary-tree/balanced_binary_tree_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,10 @@ import (
1010

1111
/*
1212
1
13-
2
14-
3
15-
4
13+
14+
2
15+
3
16+
4
1617
*/
1718
func TestIsBalanced(t *testing.T) {
1819
cases := []*leetcode.TreeNode{

leetcode/0149.max-points-on-a-line/max_points_on_a_line.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package leetcode
22

3-
//斜率,用最简约分子分母表示,为防止溢出,类型为int64
3+
// 斜率,用最简约分子分母表示,为防止溢出,类型为int64
44
type slope struct {
55
m int64 //分子
66
n int64 //分母
@@ -30,7 +30,7 @@ func maxPoints(points [][]int) int {
3030
return res
3131
}
3232

33-
//根据两点求斜率
33+
// 根据两点求斜率
3434
func getSlope(p1, p2 []int) slope {
3535
dx := int64(p1[0] - p2[0])
3636
dy := int64(p1[1] - p2[1])

leetcode/0450.delete-node-in-a-bst/delete_node_in_a_bst_test.go

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,13 @@ import (
99
)
1010

1111
/*
12-
10
13-
5 11
14-
4 6 12
15-
2 9
16-
3 8
12+
10
13+
5 11
14+
4 6 12
15+
16+
2 9
17+
18+
3 8
1719
*/
1820
func TestDeleteNode(t *testing.T) {
1921
example := "[10, 5, 11, 4, 6, null, 12, 2, null, null, 9, null, null, null, 3, 8]"

leetcode/0590.n-ary-tree-postorder-traversal/n_ary_tree_postorder_traversal.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,7 @@ func PostorderByStack(root *Node) []int {
3030
stack = stack[:last]
3131

3232
results = append(results, n.Val)
33-
for i := range n.Children {
34-
stack = append(stack, n.Children[i])
35-
}
33+
stack = append(stack, n.Children...)
3634
}
3735

3836
for i, j := 0, len(results)-1; i < j; i, j = i+1, j-1 {

structure/tree/binary_tree.go

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ import (
44
"fmt"
55
)
66

7-
//Node 二叉树的节点
7+
// Node 二叉树的节点
88
type Node struct {
99
data interface{}
1010
left *Node
1111
right *Node
1212
}
1313

14-
//NewNode 初始化一个节点
14+
// NewNode 初始化一个节点
1515
func NewNode(data interface{}) *Node {
1616
return &Node{data: data}
1717
}
@@ -20,17 +20,17 @@ func (n *Node) String() string {
2020
return fmt.Sprintf("v:%+v, left:%+v, right:%+v", n.data, n.left, n.right)
2121
}
2222

23-
//BinaryTree 二叉树的结构体
23+
// BinaryTree 二叉树的结构体
2424
type BinaryTree struct {
2525
root *Node
2626
}
2727

28-
//NewBinaryTree 初始化一个二叉树
28+
// NewBinaryTree 初始化一个二叉树
2929
func NewBinaryTree(rootV interface{}) *BinaryTree {
3030
return &BinaryTree{root: NewNode(rootV)}
3131
}
3232

33-
//InOrderTraverse 使用递归方法的中序遍历
33+
// InOrderTraverse 使用递归方法的中序遍历
3434
func (bt *BinaryTree) InOrderTraverse() (result []interface{}) {
3535
if left := bt.root.left; nil != left {
3636
newBT := &BinaryTree{root: left}
@@ -47,7 +47,7 @@ func (bt *BinaryTree) InOrderTraverse() (result []interface{}) {
4747
return
4848
}
4949

50-
//PreOrderTraverse 使用递归方法的前序遍历
50+
// PreOrderTraverse 使用递归方法的前序遍历
5151
func (bt *BinaryTree) PreOrderTraverse() (result []interface{}) {
5252
result = append(result, bt.root.data)
5353

@@ -64,7 +64,7 @@ func (bt *BinaryTree) PreOrderTraverse() (result []interface{}) {
6464
return
6565
}
6666

67-
//PostOrderTraverse 使用递归方法的后序遍历
67+
// PostOrderTraverse 使用递归方法的后序遍历
6868
func (bt *BinaryTree) PostOrderTraverse() (result []interface{}) {
6969
if left := bt.root.left; nil != left {
7070
newBT := &BinaryTree{root: left}
@@ -80,7 +80,7 @@ func (bt *BinaryTree) PostOrderTraverse() (result []interface{}) {
8080
return
8181
}
8282

83-
//InOrderTraverseByStack 使用stack的中序遍历
83+
// InOrderTraverseByStack 使用stack的中序遍历
8484
func (bt *BinaryTree) InOrderTraverseByStack() (result []interface{}) {
8585
stack := make([]*Node, 0)
8686
n := bt.root
@@ -100,7 +100,7 @@ func (bt *BinaryTree) InOrderTraverseByStack() (result []interface{}) {
100100
return
101101
}
102102

103-
//PreOrderTraverseByStack 使用stack的前序遍历
103+
// PreOrderTraverseByStack 使用stack的前序遍历
104104
func (bt *BinaryTree) PreOrderTraverseByStack() (result []interface{}) {
105105
stack := make([]*Node, 0)
106106
n := bt.root
@@ -117,7 +117,7 @@ func (bt *BinaryTree) PreOrderTraverseByStack() (result []interface{}) {
117117
return
118118
}
119119

120-
//PostOrderTraverseByStack 使用stack的后序遍历
120+
// PostOrderTraverseByStack 使用stack的后序遍历
121121
func (bt *BinaryTree) PostOrderTraverseByStack() (result []interface{}) {
122122
var pre *Node
123123
n := bt.root
@@ -140,7 +140,7 @@ func (bt *BinaryTree) PostOrderTraverseByStack() (result []interface{}) {
140140
return
141141
}
142142

143-
//PostOrderTraverseByTwoStack 使用两个stack的后序遍历
143+
// PostOrderTraverseByTwoStack 使用两个stack的后序遍历
144144
func (bt *BinaryTree) PostOrderTraverseByTwoStack() (result []interface{}) {
145145
n := bt.root
146146
stack1 := []*Node{n}
@@ -163,21 +163,21 @@ func (bt *BinaryTree) PostOrderTraverseByTwoStack() (result []interface{}) {
163163
return
164164
}
165165

166-
//BinarySearchTree 二叉搜索树
166+
// BinarySearchTree 二叉搜索树
167167
type BinarySearchTree struct {
168168
*BinaryTree
169169
CompareFunc func(v, nodeV interface{}) int
170170
}
171171

172-
//NewBinarySearchTree 初始化二叉搜索树
172+
// NewBinarySearchTree 初始化二叉搜索树
173173
func NewBinarySearchTree(rootV interface{}, compareFunc func(v, nodeV interface{}) int) *BinarySearchTree {
174174
return &BinarySearchTree{
175175
BinaryTree: NewBinaryTree(rootV),
176176
CompareFunc: compareFunc,
177177
}
178178
}
179179

180-
//Insert 插入一个值到二叉搜索树中
180+
// Insert 插入一个值到二叉搜索树中
181181
func (bst *BinarySearchTree) Insert(v interface{}) bool {
182182
n := bst.root
183183
for nil != n {
@@ -202,13 +202,13 @@ func (bst *BinarySearchTree) Insert(v interface{}) bool {
202202
return false
203203
}
204204

205-
//Delete 删除二叉搜索树中的某个值
205+
// Delete 删除二叉搜索树中的某个值
206206
func (bst *BinarySearchTree) Delete(v interface{}) bool {
207207
// TODO
208208
return false
209209
}
210210

211-
//Find 查找二叉搜索树中的某个值
211+
// Find 查找二叉搜索树中的某个值
212212
func (bst *BinarySearchTree) Find(v interface{}) bool {
213213
n := bst.root
214214
for nil != n {
@@ -226,7 +226,7 @@ func (bst *BinarySearchTree) Find(v interface{}) bool {
226226
return false
227227
}
228228

229-
//Min 返回二叉搜索树中的最小值
229+
// Min 返回二叉搜索树中的最小值
230230
func (bst *BinarySearchTree) Min() interface{} {
231231
n := bst.root
232232
for nil != n {
@@ -238,7 +238,7 @@ func (bst *BinarySearchTree) Min() interface{} {
238238
return n.data
239239
}
240240

241-
//Max 返回二叉搜索树中的最大值
241+
// Max 返回二叉搜索树中的最大值
242242
func (bst *BinarySearchTree) Max() interface{} {
243243
n := bst.root
244244
for nil != n {

0 commit comments

Comments
 (0)