链接:
剑指 Offer 53 - II. 0~n-1中缺失的数字
题意:
如题
解:
长度n的递增数组里,要找0到n中没出现的那个数字,那么出现的下标是0到n-1,一一对应即可,都出现了就是n没有
实际代码:
#include<bits/stdc++.h>
using namespace std;
int missingNumber(vector<int>& nums)
{for(int i=0;i<nums.size();i++){if(i!=nums[i]) return i;}return nums.size();
}
int main()
{vector<int> nums;int num;while(cin>>num) nums.push_back(num);int ans=missingNumber(nums);cout<<ans<<endl;return 0;
}
限制:
1 <= 数组长度 <= 10000
附记简单题
剑指 Offer 53 - I. 在排序数组中查找数字 I
#include<bits/stdc++.h>
using namespace std;
int search(vector<int>& nums, int target)
{int ret=0;for(auto &num:nums) if(num==target) ret++;return ret;
}
int main()
{vector<int> nums;int num,t;cin>>t;while(cin>>num) nums.push_back(num);int ans=search(nums,t);cout<<ans<<endl;return 0;
}
0 <= nums.length <= 105
-109 <= nums[i] <= 109
nums 是一个非递减数组
-109 <= target <= 109