golang切片slice操作
func Insert(arr []int, index int, value int) []int {
result := make([]int, len(arr)+1)
copy(result, arr[:index])
copy(result[index+1:], arr[index:])
result[index] = value
return result
}
func Delete(arr []int, index int) []int {
result := make([]int, len(arr)-1)
result = append(arr[:index], arr[index+1:]...)
return result
}
func main() {
//arr := []int{3, 5, 4, 3, 5, 6, 7, 5, 4, 1, 2, 2, 1, 2, 3, 2, 2, 2, 2, 2, 1, 1, 1, 9, 3, 3, 5, 5, 6, 7, 7, 4, 4, 4, 4, 6, 6, 7, 7, 8, 5}
arr := []int{3, 5, 4, 1, 2}
for i := 0; i < 5; i++ {
arr = Insert(arr, 1, 9)
}
for i := 0; i < 7; i++ {
arr = Delete(arr, 0)
fmt.Println(arr)
}
//fmt.Println(arr)
}