原題如下:
丟失的第乙個正整數
給出乙個無序的正數陣列,找出其中沒有出現的最小正整數。
您在真實的面試中是否遇到過這個題?
yes
樣例如果給出[1,2,0]
, return3
如果給出[3,4,-1,1]
, return2
做題思路:
1、這題並不難,主要是要考慮到多種不同的情況,題目給出的陣列應該是可以有重複數字並且有正有負的;
2、最小的正整數,將陣列中的數放入乙個與輸入陣列等大的陣列中,排序,如果最小的數是小於等於1的,最小正整數應該在陣列中間或者大於陣列最大的數,這時候只要考慮每乙個數和前乙個數相差的是不是大於1即可,注意,還要保證前乙個數是大於0的;
3、如果最小的數大於1,那麼結果就為1.
具體的c++**如下:
class solution
}int len = a.size();
sort(a.begin(), a.end());
int max = a[len - 1];
vectorm(len,0);
for (int i = 0; i < len;i++)
if (m[0] <= 1)
}return m[len - 1] + 1;
}else}};
LintCode刷題隨筆
給出乙個陣列nums包含n 1個整數,每個整數是從1到n 包括邊界 保證至少存在乙個重複的整數。假設只有乙個重複的整數,找出這個重複的數。1.不能修改陣列 假設陣列只能讀 2.只能用額外的o 1 的空間 3.時間複雜度小於o n 2 4.陣列中只有乙個重複的數,但可能重複超過一次 您在真實的面試中是...
lintcode刷題 最小差
原題如下 最小差 給定兩個整數陣列 第乙個是陣列a,第二個是陣列b 在陣列 a 中取 a i 陣列 b 中取 b j a i 和 b j 兩者的差越小越好 a i b j 返回最小差。您在真實的面試中是否遇到過這個題?yes 樣例給定陣列 a 3,4,6,7 b 2,3,8,9 返回0。做題思路 1...
LintCode刷題 有效數字
今天第一次是跟隨乙個博主學習足跡知道有lintcode 和leetcode這兩個刷題 專為學程式設計的同志練手,我希望我可以每天堅持刷一題!題目 有效數字 要求 希望可以得到如下效果 0 true 0.1 true abc false 1 a false 2e10 true 程式 public cl...