在包含 n+1 个数的序列 a 中找出重复的数。序列 a 中包含从 1 到 n 的整数,且只有一个数有重复值。 要求时间复杂度为 O(n),额外空间复杂度为 O(1)。
示例1
输入
4,[1,2,1,4,3]
输出
1
备注:
其中1要求时间复杂度为O(n),额外空间复杂度为O(1)
加载中...
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int * @param a int一维数组 * @return int */ public int search (int n, int[] a) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int * @param a intvector * @return int */ int search(int n, vector
& a) { // write code here } };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param n int # @param a int一维数组 # @return int # class Solution: def search(self , n , a ): # write code here
using System; using System.Collections.Generic; class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int * @param a int一维数组 * @return int */ public int search (int n, List
a) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int * @param a int一维数组 * @return int */ function search( n , a ) { // write code here } module.exports = { search : search };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param n int # @param a int一维数组 # @return int # class Solution: def search(self , n , a ): # write code here
package main /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int * @param a int一维数组 * @return int */ func search( n int , a []int ) int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int * @param a int一维数组 * @param aLen int a数组长度 * @return int */ int search(int n, int* a, int aLen ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param n int # @param a int一维数组 # @return int # class Solution def search(n, a) # write code here end end
4,[1,2,1,4,3]
1