在golang中,我们可以使用倒置的映射方法来打印倒置的哈希集合。Hashmap将数据以key:Value的形式存储在哈希集合中,这样可以减少执行时间。在这篇文章中,我们将看到两个不同的例子来了解如何创建一个打印倒置哈希集合的golang程序。
语法
func make ([] type, size, capacity)
Go语言中的make函数是用来创建数组/映射的,它接受要创建的变量类型、其大小和容量作为参数。
func len(v Type) int
len()函数是用来获取任何参数的长度的。它需要一个参数作为数据类型的变量,我们希望找到它的长度,并返回整数值,即该变量的长度。
算法
- 在程序中导入所需的包
-
创建一个主函数
-
在该函数中创建一个哈希姆图
-
然后,使用内部函数创建一个倒置的地图
-
在控制台上打印出倒置的地图
例1
在这个例子中,我们将创建一个hashmap和一个额外的名为inverted的地图,以获得倒置的输出,即key被分配给value。hashmap将在每次迭代中得到倒置的输出。让我们来理解这个例子,仔细看看代码和算法。
//Golang program to print the inverted hash collection
package main
import "fmt"
//Main to execute the program
func main() {
// Create a map with keys of type string and values of type int
hashmap := map[string]int{"apple": 100, "mango": 180, "banana": 120}
// Create a new map with inverted keys and values
inverted := make(map[int]string)
for k, element := range hashmap {
inverted[element] = k
}
// Print the inverted map
fmt.Println("This is the following inverted map:")
fmt.Println(inverted)
}
输出
This is the following inverted map:
map[100:apple 120:banana 180:mango]
例2
在本例中,我们将在make函数中使用len(map)来创建倒置的map,它将被用来存储倒置的键:值对。输出将是一个使用fmt包打印在控制台的倒置地图。让我们看看通过代码和算法的执行情况。
//Golang program to print the inverted hash collection
package main
import "fmt"
//Main function to execute the program
func main() {
// Create a map with keys of type string and values of type int
hashmap := map[string]int{"apple": 100, "mango": 120, "banana": 130}
// Create a new map with inverted keys and values
inverted := make(map[int]string, len(hashmap))
for k, element := range hashmap {
inverted[element] = k
}
// Print the inverted map
fmt.Println("The inverted map is presented as follows:")
fmt.Println(inverted)
}
输出
The inverted map is presented as follows:
map[100:apple 120:mango 130:banana]
结论
我们用两个例子执行了打印倒置的哈希集合的程序。在第一个例子中,我们没有使用len(hashmap)来创建额外的地图,而在第二个例子中,我们使用len(hashmap)函数来创建地图。