Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Memetakan Rentetan dengan Cekap ke Senarai dalam Go?

Bagaimana untuk Memetakan Rentetan dengan Cekap ke Senarai dalam Go?

DDD
DDDasal
2024-12-12 14:03:14978semak imbas

How to Efficiently Map Strings to Lists in Go?

Menggunakan peta rentetan untuk Menyenaraikan Kejadian

Dalam Go, mencipta pemetaan rentetan kepada senarai boleh dicapai menggunakan jenis peta. Jenis peta dalam Go ialah koleksi tidak tertib pasangan nilai kunci, di mana setiap kunci adalah unik dan dikaitkan dengan satu nilai.

Pendekatan Menggunakan Pustaka Senarai

Satu cara untuk mencipta peta rentetan kepada senarai adalah dengan memanfaatkan bekas/senarai perpustakaan standard Go. Pendekatan ini memerlukan pengendalian eksplisit bagi contoh senarai.

package main

import (
    "fmt"
    "container/list"
)

func main() {
    // Create a map of string to *list.List instances.
    x := make(map[string]*list.List)

    // Create an empty list and associate it with the key "key".
    x["key"] = list.New()

    // Push a value into the list.
    x["key"].PushBack("value")

    // Retrieve the value from the list.
    fmt.Println(x["key"].Front().Value)
}

Pendekatan Alternatif Menggunakan Slice

Dalam banyak kes, menggunakan kepingan sebagai jenis nilai dan bukannya senarai. Contoh senarai mungkin lebih sesuai . Slices menyediakan cara yang lebih mudah dan idiomatik untuk mewakili senarai dalam Go.

package main

import "fmt"

func main() {
    // Create a map of string to string slices.
    x := make(map[string][]string)

    // Append values to the slice associated with the key "key".
    x["key"] = append(x["key"], "value")
    x["key"] = append(x["key"], "value1")

    // Retrieve the values from the slice.
    fmt.Println(x["key"][0])
    fmt.Println(x["key"][1])
}

Pendekatan alternatif ini menggunakan kepingan, yang merupakan tatasusunan yang berkembang secara dinamik, menyediakan cara yang lebih cekap dan berprestasi untuk mengurus senarai dalam aplikasi Go.

Atas ialah kandungan terperinci Bagaimana untuk Memetakan Rentetan dengan Cekap ke Senarai dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn