feature: add auto-build-and-test workflow for go (#1019)

* fix(csharp): unified array statement

* feature: add workflow for go/js/ts/zig

* fix python UnicodeDecodeError on windows

* Update space_complexity.go

* Update space_complexity_test.go

* Update space_complexity.go

* remove nodejs, zip workflow

---------

Co-authored-by: Yudong Jin <krahets@163.com>
This commit is contained in:
hpstory
2024-01-12 14:17:21 +08:00
committed by GitHub
parent d85a3bb74d
commit b9ae4ffe9a
4 changed files with 51 additions and 35 deletions

View File

@ -7,6 +7,8 @@ package chapter_computational_complexity
import (
"fmt"
"strconv"
. "github.com/krahets/hello-algo/pkg"
)
/* 结构体 */
@ -15,33 +17,11 @@ type node struct {
next *node
}
/* treeNode 二叉树 */
type treeNode struct {
val int
left *treeNode
right *treeNode
}
/* 创建 node 结构体 */
func newNode(val int) *node {
return &node{val: val}
}
/* 创建 treeNode 结构体 */
func newTreeNode(val int) *treeNode {
return &treeNode{val: val}
}
/* 输出二叉树 */
func printTree(root *treeNode) {
if root == nil {
return
}
fmt.Println(root.val)
printTree(root.left)
printTree(root.right)
}
/* 函数 */
func function() int {
// 执行某些操作...
@ -54,7 +34,7 @@ func spaceConstant(n int) {
const a = 0
b := 0
nums := make([]int, 10000)
ListNode := newNode(0)
node := newNode(0)
// 循环中的变量占用 O(1) 空间
var c int
for i := 0; i < n; i++ {
@ -64,7 +44,10 @@ func spaceConstant(n int) {
for i := 0; i < n; i++ {
function()
}
fmt.Println(a, b, nums, c, ListNode)
b += 0
c += 0
nums[0] = 0
node.val = 0
}
/* 线性阶 */
@ -112,12 +95,12 @@ func spaceQuadraticRecur(n int) int {
}
/* 指数阶(建立满二叉树) */
func buildTree(n int) *treeNode {
func buildTree(n int) *TreeNode {
if n == 0 {
return nil
}
root := newTreeNode(0)
root.left = buildTree(n - 1)
root.right = buildTree(n - 1)
root := NewTreeNode(0)
root.Left = buildTree(n - 1)
root.Right = buildTree(n - 1)
return root
}