Golang程序 在一个给定的数组中寻找重复的元素

Golang程序 在一个给定的数组中寻找重复的元素

例子

  • 输入数组 = [1, 3, 5, 6, 1] => 重复的元素是1。
  • 输入数组 = [1, 3, 5, 6, 7] => 返回 -1

解决这个问题的方法

  • 第1步: 定义一个接受数组的方法。
  • 第2步: 声明一个被访问的Map。
  • 第3步:对给定的数组进行迭代。如果元素存在于访问Map中,那么返回该元素。
  • 第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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程