【LeetCode】217. Contains Duplicate 解答・解説【Python】

この記事は約2分で読めます。

 

問題

原文

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 1:

 Input: nums = [1,2,3,1]

 Output: true

Example 2:

Input: nums = [1,2,3,4]

Output: false

Example 3:

Input: nums = [1,1,1,3,3,4,3,2,4,2]

Output: true

Constraints:

  • 1 <= nums.length <= 105
  • -109 <= nums[i] <= 109

 

内容

整数配列numsが与えられます。配列内で2回登場する要素があればTrueを返してください。全ての要素が異なる場合はFalseを返して下さい。

 

※正しくない可能性があります。

方針

・Setを使って要素数が異なる場合にTrue、要素数が同じ場合はFalseを返す

解答

解答1

 

setを使うと重複を排除することができる。

同じ値が配列内にある場合は、重複が除外されて要素数が少なくなるのでTrueかFalseか判定することができる。

補足・参考・感想

参考

久しぶりに自力で解けたのだけど、計算量を考えつつ解法について話し合いながら解答できる状態になりたい。

また、コーディングインタビューに頻出の問題の練習必須。

 

前:141. Linked List Cycle

次:876. Middle of the Linked List

LeetCode 解答・解説記事一覧

コメント