编写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

猜你喜欢