Junior — Middle
Πώς να εισάγετε ένα νέο στοιχείο στο κεντρικό μέρος ενός δυναμικού πίνακα (layer);
sobes.tech AI
Απάντηση από AI
Στη γλώσσα Go, για να εισάγετε ένα νέο στοιχείο στη μέση ενός slice, πρέπει να δημιουργήσετε ένα νέο slice που συνδυάζει τα τμήματα πριν και μετά από τη θέση εισαγωγής, καθώς και το στοιχείο που θα εισαχθεί. Για παράδειγμα, για να εισάγετε το στοιχείο x στη θέση i του slice s:
s = append(s[:i], append([]T{x}, s[i:]...)...)
Εδώ, το T είναι ο τύπος των στοιχείων του slice. Αυτή η μέθοδος λειτουργεί ως εξής:
- Παίρνουμε ένα τμήμα από την αρχή μέχρι τη θέση
i(χωρίς να συμπεριλαμβάνει τοi):s[:i] - Δημιουργούμε ένα slice με ένα μόνο στοιχείο
x:[]T{x} - Παίρνουμε ένα τμήμα από τη θέση
iμέχρι το τέλος:s[i:] - Το εσωτερικό
appendσυνδυάζει το στοιχείο προς εισαγωγή και την ουρά του slice - Το εξωτερικό
appendπροσθέτει όλα στην αρχή
Παράδειγμα:
s := []int{1, 2, 4, 5}
x := 3
i := 2
s = append(s[:i], append([]int{x}, s[i:]...)...)
// το s τώρα είναι: [1 2 3 4 5]
Αυτή είναι η τυπική μέθοδος για εισαγωγή στη μέση ενός slice στη γλώσσα Go.