go - golang中的插入排序

标签 go

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/

相关文章:

unix - 如何在 golang 中实现类似于 unix 中的 cat 的文本流?

http - Go:如何组合两个(或更多)http.ServeMux?

go - 如何为 []map[string]string 添加示例

performance - 协程性能

go - gRPC 私有(private) channel

windows - 将 Windows 库与 cgo 一起使用

go - reflect.TypeOf 是 *string 并返回 0xc0001ae4a8 - 如何打印

go - 如何从开始到特定偏移量消耗消息

go - 检测未初始化的结构字段

docker - Nginx 反向代理到主机中的应用程序