classSolution{
public:intmissingNumber(vector<int>& nums){
int n = nums.size();int res = n;for(int i=0;i<n;i++){
while(i!=n&&nums[i]!=n&&nums[i]!=i){
swap(nums[i],nums[nums[i]]);}}for(int i=0;i<n;i++){
if(i!=nums[i])
res = i;}return res;}};
根据特点异或解法
classSolution{
public:intmissingNumber(vector<int>& nums){
int n = nums.size();int res =0;for(int i=0;i<n;i++){
//相当于实现0^0...n^0...n,但少了n所以最后再补上。
res ^= nums[i]^i;}return res^n;}};