golang中的插入排序
依次输出序列的一个元素golang中的插入排序,go,Go,依次输出序列的一个元素 package main import( "fmt" ) 0-里金 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") } 上面的代码有错误,下面的代码也有错误 func insert
package main
import(
"fmt"
)
0-里金
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")
}
上面的代码有错误,下面的代码也有错误
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
}
这都是用C语言编写的,在Main中出现了很多错误
go1.5.2有几件事:
scanf不是您可能需要的函数fmt.scanf
数组不是片[100]int与[]int是不同的类型
无法打印traceA,N,因为它不返回值
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
}