编写Golang程序以查找给定数组中的重复元素
例子
输入数组=[1、3、5、6、1]=>重复元素为1;
输入数组=[1、3、5、6、7]=>返回-1
解决这个问题的方法
步骤1: 定义一个接受数组的方法。
第2步: 声明访问过的映射。
步骤3:迭代给定的数组。如果该元素存在于已访问映射中,则返回该元素。
步骤4:否则,返回-1。
程序
package main import "fmt" func duplicateInArray(arr []int) int{ visited := make(map[int]bool, 0) for i:=0; i<len(arr); i++{ if visited[arr[i]] == true{ return arr[i] } else { visited[arr[i]] = true } } return -1 } func main(){ fmt.Println(duplicateInArray([]int{1, 4, 7, 2, 2})) fmt.Println(duplicateInArray([]int{1, 4, 7, 2, 3})) }输出结果
2 -1