Sobes.tech
Middle
34

Екі тізімнің элементтерін жұптар тізіміне біріктіретін zip функциясын жүзеге асыру қажет ```go func main() { s1, s2 := []int{1, 2, 3}, []int{4, 5, 6, 7, 8} fmt.Println(zip(s1, s2)) // [[1 4] [2 5] [3 6]] } func zip(s1 []int, s2 []int) [][]int { //... } ```

Сұралған компаниялар
OZONOZON

AI-дан жауап

sobes.tech AI

Zip функциясы екі тізім бойынша өтіп, олардың ең кішісінің ұзындығына тең жұптар тізімін құруы керек. Міне, Go тілінде жүзеге асыру мысалы:

func zip(s1 []int, s2 []int) [][]int {
    length := len(s1)
    if len(s2) < length {
        length = len(s2)
    }
    result := make([][]int, length)
    for i := 0; i < length; i++ {
        result[i] = []int{s1[i], s2[i]}
    }
    return result
}

Бұл кодта біз ең кіші ұзындықты анықтап, қажетті мөлшердегі тізімді құрамыз және оны s1 мен s2-ден алынған жұптармен толтырамыз.