Junior — Middle
Kaip įterpti naują elementą į dinaminio masyvo (layers) centrinę dalį?
sobes.tech AI
Atsakymas iš AI
Go kalboje, norint įterpti naują elementą į vidurį slice, reikia sukurti naują slice, kuris sujungia prieš ir po įterpimo pozicijos dalis bei įterptą elementą. Pavyzdžiui, norint įterpti elementą x į poziciją i slice s:
s = append(s[:i], append([]T{x}, s[i:]...)...)
Čia T yra slice elementų tipas. Šis metodas veikia taip:
- Imame segmentą nuo pradžios iki pozicijos
i(neįskaitanti):s[:i] - Sukuriame slice su vienu elementu
x:[]T{x} - Imame segmentą nuo pozicijos
iiki pabaigos:s[i:] - Vidinis
appendsujungia įterptą elementą ir slice galą - Išorinis
appendprideda viską į pradžią
Pavyzdys:
s := []int{1, 2, 4, 5}
x := 3
i := 2
s = append(s[:i], append([]int{x}, s[i:]...)...)
// dabar s: [1 2 3 4 5]
Tai yra standartinis būdas įterpti į slice vidurį Go kalboje.