33 lines
634 B
Go
33 lines
634 B
Go
package arrays
|
|
import("fmt")
|
|
/*
|
|
Given an integer array nums,
|
|
return true if any value appears at least twice in the array, and return false if every element is distinct.
|
|
|
|
Example:
|
|
Input: nums = [1, 2, 3, 1]
|
|
Output: true
|
|
|
|
Time: O(n)
|
|
Space: O(n)
|
|
|
|
*/
|
|
|
|
func containsDuplicate(nums []int) bool {
|
|
dictionary := make(map[int]int)
|
|
|
|
for _, num := range(nums){
|
|
if _, found := dictionary[num]; found{
|
|
return true;
|
|
}else{
|
|
dictionary[num] = 1
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
func runContainDuplicate(){
|
|
nums := []int{1,2,3,1}
|
|
hasDuplicate := containsDuplicate(nums)
|
|
fmt.Printf("Contain Duplicate %t\n", hasDuplicate)
|
|
} |