陣列中重複數字

2021-10-13 21:02:15 字數 734 閱讀 9470

題目描述

在乙個長度為n的陣列裡的所有數字都在0到n-1的範圍內。 陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中第乙個重複的數字。 例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。

返回描述:

如果陣列中有重複的數字,函式返回true,否則返回false。

如果陣列中有重複的數字,把重複的數字放到引數duplication[0]中。(ps:duplication已經初始化,可以直接賦值使用。)

# -*- coding:utf-8 -*-

class solution:

# 這裡要特別注意~找到任意重複的乙個值並賦值到duplication[0]

# 函式返回true/false

def duplicate(self, numbers, duplication):

# write code here

nums =

for i in range(len(numbers)):

if numbers[i] in nums:

duplication[0] = numbers[i]

return true

else:

return false

感覺沒用什麼演算法,很奇怪就過了。。。。我看別人是用交換做的,num[i]和num[num[i]],面試的時候還是用這種思路吧,python這種太暴力了。。。

陣列中的重複數字

在乙個長度為n的陣列裡的所有數字都在0到n 1的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出是重複的數字2或者3。1 排序 將陣列排序,然後掃瞄排序後的陣列即可。時間複雜度 o nl...

陣列中的重複數字

題目 在乙個長度為n的陣列裡的所有數字都在0 n 1的範圍內。陣列中某些數字是重複的,但不知道有幾個數字重複了,也不知道每個數字重複了幾次。請找出陣列中任意重複的數字。例如 如果輸入長度為7的陣列,那麼對應的輸出的重複的數字2或者3。分析 陣列中的數字都在0 n 1之間,如果沒有該陣列中沒有重複的數...

陣列中的重複數字

遍歷整個陣列,判斷是否存在與於set中,不存在將其放入即可,若存在,即找到了重複數字,跳出迴圈 public static int findbyhashset int x int re 0 set sset new hashset for int i 0 i可以對陣列進行整個遍歷,當掃瞄的下標為i的...