第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何從不在切片 B 中的切片 A 中獲取值?

如何從不在切片 B 中的切片 A 中獲取值?

Go
Smart貓小萌 2022-10-10 18:02:02
我有兩個切片A := []string{"a","b","c","d"}和B := []string{"a","b"}.如何["c","d"] 從切片 A 中獲???我嘗試了各種方法,但仍然沒有得到我想要的結(jié)果。謝謝package mainimport (    "fmt")func main() {    A := []string{"a","b","c","d"}    B := []string{"a","b"}    temp := []string{}        for _, a := range A {        for _, b := range B {            if a == b {                fmt.Printf("%s == %s\n", a,b)                temp = append(temp, a)                break            }               }            }    }
查看完整描述

3 回答

?
翻過高山走不出你

TA貢獻(xiàn)1875條經(jīng)驗 獲得超3個贊

你幾乎明白了。請注意是否a在B. 如果a在 中找不到B,則添加a到結(jié)果中。


func main() {

    A := []string{"a", "b", "c", "d"}

    B := []string{"a", "b"}

    var result []string


    for _, a := range A {

        found := false

        for _, b := range B {

            if a == b {

                found = true

                break

            }

        }

        if !found {

            result = append(result, a)

        }

    }

    fmt.Println(result)

}


查看完整回答
反對 回復(fù) 2022-10-10
?
喵喔喔

TA貢獻(xiàn)1735條經(jīng)驗 獲得超5個贊

func main() {

    A := []string{"a", "b", "c", "d"}

    B := []string{"a", "b"}


    var outterLoop, innerLoop []string


    if len(A) > len(B) {

        outterLoop = A

        innerLoop = B

    } else {

        outterLoop = B

        innerLoop = A

    }

    temp := []string{}

    for _, b := range outterLoop {

        found := false

        for _, a := range innerLoop {

            if a == b {

                found = true

            }

        }

        if !found {

            temp = append(temp, b)

        }

    }


    for _, t := range temp {

        println(t)

    }

}


查看完整回答
反對 回復(fù) 2022-10-10
?
明月笑刀無情

TA貢獻(xiàn)1828條經(jīng)驗 獲得超4個贊

package main


import "fmt"


func find(a, b []string) []string {

    bm := make(map[string]struct{}, len(b))

    ok := false

    for i := range b {

        if _, ok = bm[b[i]]; !ok {

            bm[b[i]] = struct{}{}

        }

    }


    res := make([]string, 0)

    for i := range a {

        if _, ok = bm[a[i]]; !ok {

            res = append(res, a[i])

        }

    }


    return res

}


func main() {

    a := []string{"a", "b", "c", "d"}

    b := []string{"a", "b"}


    t := find(a, b)


    fmt.Println(t)

}


查看完整回答
反對 回復(fù) 2022-10-10
  • 3 回答
  • 0 關(guān)注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號