这是 LeetCode 问题:189. 旋转数组:
给定一个数组,将数组向右旋转 k 步,其中 k 为非负数。
示例1:
输入:[1,2,3,4,5,6,7] 且 k = 3
输出:[5,6,7,1,2,3,4]
这是我的解决方案:
func rotate(nums []int, k int) {
k = k % len(nums)
nums = append(nums[k:],nums[0:k]...)
fmt.Println(nums)
}
Run Code Online (Sandbox Code Playgroud)
这是一个简单的算法,但它不起作用。
我是围棋新手。我想nums是按值传递的,并且更改nums不会影响真实的nums.
我怎样才能做到这一点?
我正在使用内存中的sqlite,如下所示。
func init() {
global.ConductorConfig = readConfig()
log.Println(utils.GetCurrentDir() + global.ConductorConfig.DbFile)
//db = sqlx.MustConnect("sqlite3", utils.GetCurrentDir()+global.ConductorConfig.DbFile)
db = sqlx.MustConnect("sqlite3", ":memory:")
db.Exec(schema)
task:=model.Task{}
SaveTask(&task)
db.MapperFunc(func(s string) string {
return s
})
}
Run Code Online (Sandbox Code Playgroud)
在我的主函数中,我创建了表
if global.ConductorConfig.DevMode {
db.CreateTables()
}
go job.HeartbeatJob()
go job.TaskClearJob()
app.Action = func(c *cli.Context) error {
ListenAndServe()
return nil
}
Run Code Online (Sandbox Code Playgroud)
然后我在 http 处理程序函数中“没有这样的表”。
existed, err := db.GetAgentByServerName(agent.ServerName)
if err != nil {
c.JSON(http.StatusBadRequest, err)
log.Println("[conductor] error occurred when get agent by server name: " + err.Error())
return err
}
func GetAgentByServerName(name …Run Code Online (Sandbox Code Playgroud)