diff --git a/Algorithms/217. Contains Duplicate/217. Contains Duplicate.go b/Algorithms/217. Contains Duplicate/217. Contains Duplicate.go new file mode 100644 index 00000000..d6b82e82 --- /dev/null +++ b/Algorithms/217. Contains Duplicate/217. Contains Duplicate.go @@ -0,0 +1,12 @@ +package leetcode + +func containsDuplicate(nums []int) bool { + record := make(map[int]bool, len(nums)) + for _, n := range nums { + if _, found := record[n]; found { + return true + } + record[n] = true + } + return false +} diff --git a/Algorithms/217. Contains Duplicate/217. Contains Duplicate_test.go b/Algorithms/217. Contains Duplicate/217. Contains Duplicate_test.go new file mode 100644 index 00000000..270d0041 --- /dev/null +++ b/Algorithms/217. Contains Duplicate/217. Contains Duplicate_test.go @@ -0,0 +1,52 @@ +package leetcode + +import ( + "fmt" + "testing" +) + +type question217 struct { + para217 + ans217 +} + +// para 是参数 +// one 代表第一个参数 +type para217 struct { + one []int +} + +// ans 是答案 +// one 代表第一个答案 +type ans217 struct { + one bool +} + +func Test_Problem217(t *testing.T) { + + qs := []question217{ + + question217{ + para217{[]int{1, 2, 3, 1}}, + ans217{true}, + }, + + question217{ + para217{[]int{1, 2, 3, 4}}, + ans217{false}, + }, + + question217{ + para217{[]int{1, 1, 1, 3, 3, 4, 3, 2, 4, 2}}, + ans217{true}, + }, + } + + fmt.Printf("------------------------Leetcode Problem 217------------------------\n") + + for _, q := range qs { + _, p := q.ans217, q.para217 + fmt.Printf("【input】:%v 【output】:%v\n", p, containsDuplicate(p.one)) + } + fmt.Printf("\n\n\n") +} diff --git a/Algorithms/217. Contains Duplicate/README.md b/Algorithms/217. Contains Duplicate/README.md new file mode 100644 index 00000000..ea89b154 --- /dev/null +++ b/Algorithms/217. Contains Duplicate/README.md @@ -0,0 +1,32 @@ +# [217. Contains Duplicate](https://leetcode.com/problems/contains-duplicate/) + +## 题目 + +Given an array of integers, find if the array contains any duplicates. + +Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct. + + +Example 1: + +```c +Input: [1,2,3,1] +Output: true +``` +Example 2: + +```c +Input: [1,2,3,4] +Output: false +``` + +Example 3: + +```c +Input: [1,1,1,3,3,4,3,2,4,2] +Output: true +``` + +## 题目大意 + +这是一道简单题,如果数组里面有重复数字就输出 true,否则输出 flase。用 map 判断即可。