为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 go 中对切片进行排序而不改变原始切片

如何在 go 中对切片进行排序而不改变原始切片

Go
qq_花开花谢_0 2022-08-01 10:51:12
在Golang中,我试图在不改变原始值的情况下对切片进行排序func main() {    originalArray := []int{4, 2, 1, 1, 2}    newArray := originalArray    sort.Ints(newArray)    fmt.Printf("%v", originalArray) // prints [1 1 2 2 4]}如何在不改变原始值的情况下对切片进行排序?golang
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

您需要制作原始切片的副本。

用:

newArray := make([]int, len(originalArray))
copy(newArray, originalArray)

艺术

newArray := append([]int{}, originalArray...)


查看完整回答
反对 回复 2022-08-01
  • 1 回答
  • 0 关注
  • 172 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信