package main
import(
"fmt"
)
依次输出序列的一个元素。
func trace(A[]int,N int){
for i :=0; i < N; i++{
if i > 0 {
fmt.Println(" ")
fmt.Println("%d",A[i])
}
}
fmt.Println("\n")
}
0-起点
func insertionSort(A[]int, N int) (int int) {
for i := 0; i < N; i++{
v := A[i]
j := i - 1
for j >= 0 && A[j] > v{
A[j + 1] = A[j]
j--
}
A[ j + 1 ] = v
trace(A,N)
}
return int
}
上面的代码有错误,下面的代码也有错误。
func main() {
var N,i,j int
var A[100]int
scanf("%d",&N)
for i:= 0; i < N; i++ {
scanf("%d",&A[i])
}
fmt.Println(trace(A,N))
fmt.Println(insertionSort(A,N))
return 0
}
这一切都在 C 中,很多错误发生在 Main
中。
go1.5.2
最佳答案
一些事情:
- scanf 不是函数(您可能需要 fmt.Scanf)
- 数组不是 slice ([100]int 是不同于 []int 的类型)
- 你不能打印 trace(A,N) 因为它没有返回值
关于go - golang中的插入排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36456232/