Tôi có một bản đồ cho chương trình của tôi trông giống như sau:Đảo ngược bản đồ ở định dạng <value, key> trong Golang
fruit_map := map[string]string {
"apple": "likey",
"orange": "no likey",
}
tôi muốn đảo ngược nó để nó đọc như sau:
{
"likey": "apple",
"no likey": "orange",
}
Không có bản sao nào trong các giá trị. Ngoài ra, bản đồ của tôi là nhỏ - khoảng 200 phím. Tôi không tìm thấy bất kỳ phương pháp tích hợp nào để đảo ngược bản đồ như thế này. Có cách nào để làm điều này nhanh không? Tôi không bận tâm về độ phức tạp của không gian, nhưng giải pháp cần phải nhanh chóng.
Cảm ơn.
Vì bạn hy vọng quy mô của bản đồ 'm' để được giống hệt nhau đến kích thước của bản đồ 'm' (giả định không có giá trị trùng lặp), bạn có thể muốn sử dụng:' n: = make (ánh xạ chuỗi ký tự, len (m)) 'để tiết kiệm đủ không gian và tránh tái phân bổ trong vòng lặp. – dubek