国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

go 計(jì)算map 差集、并集、交集

這篇具有很好參考價(jià)值的文章主要介紹了go 計(jì)算map 差集、并集、交集。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

原文鏈接:> https://www.zhoubotong.site/post/95.html

某些業(yè)務(wù)場景可能需要實(shí)現(xiàn)兩個(gè)或者多個(gè)map 的交差并集,一下舉個(gè)簡單的demo, 思路其實(shí)并不復(fù)雜:

package main

import "fmt"

// 并集
func union(m1, m2 map[string]int) map[string]int {
    result := make(map[string]int) // 思路:先把其中一個(gè)map 放到新的對象中,把m2中key不存在于本對象中合并即可
    for k, v := range m1 {
        result[k] = v
    }
    for k, v := range m2 {
        if _, ok := result[k]; !ok {
            result[k] = v
        }
    }
    return result
}

// 交集 兩個(gè)map中都存在
func intersection(m1, m2 map[string]int) map[string]int {
    result := make(map[string]int) // 思路:優(yōu)先遍歷m1,判斷m2中是否存在相同key,存在則存入新對象
    for k, v := range m1 {
        if _, ok := m2[k]; ok {
            result[k] = v
        }
    }
    return result
}

// 差集 包括第一個(gè)map中存在的鍵值對,但是不包括第二個(gè)map中的鍵值對
func difference(m1, m2 map[string]int) map[string]int {
    result := make(map[string]int) // 思路:遍歷m1, 判斷m2中不存在相同key的則存入新對象,即為差集
    for k, v := range m1 {
        if _, ok := m2[k]; !ok {
            result[k] = v
        }
    }
    return result
}
func main() {
    m1 := make(map[string]int)
    m1["a"] = 11
    m1["b"] = 12
    m1["c"] = 13
    m2 := make(map[string]int)
    m2["a"] = 11
    m2["c"] = 13
    fmt.Println("并集:", union(m1, m2))
    fmt.Println("交集:", intersection(m1, m2))
    fmt.Println("差集:", difference(m1, m2))
}

輸出:

[Running] go run "/media/uos/G/web/demo/main.go"
并集: map[a:11 b:12 c:13]
交集: map[a:11 c:13]
差集: map[b:12]

代碼中有簡單說明,不難看出實(shí)現(xiàn)過程其實(shí)比較簡單。文章來源地址http://www.zghlxwxcb.cn/news/detail-422342.html

到了這里,關(guān)于go 計(jì)算map 差集、并集、交集的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包