当前位置:网站首页>Vanishing numbers
Vanishing numbers
2022-07-04 09:47:00 【skeet follower】
Array nums Contains from 0 To n All integers of , But one of them is missing . Please write code to find the missing integer .
The required time complexity is O(n), The space complexity is O(1).
Example 1:
Input :[3,0,1] Output :2
Example 2:
Input :[9,6,4,2,3,5,7,0,1] Output :8
Train of thought :
Using the properties of XOR ,res = res ^ x ^ x. XOR the same value twice , Then the result is equal to itself , So we are right res from 0-nums.length To engage in exclusive or , At the same time nums XOR the values in the array , If there is a repetition, it will disappear , So finally res The value of is a number that appears only once , That is to say nums The missing number in the array .
int missingNumber(int* nums, int numsSize){
int ret=0;
int i=0;
for(i=0;i<=numsSize;i++){
ret^=i;
}
for(i=0;i<numsSize;i++)
{
ret^= nums[i];
}
return ret;
}int missingNumber(int* nums, int numsSize){
int ret=0;
int i=0;
for(i=1;i<=numsSize;i++){
ret^=i;
ret^=nums[i-1];
}
return ret;
}int missingNumber(int* nums, int numsSize){
int ret=0;
int i=0;
for(i=0;i<numsSize;i++){
ret^=i;
ret^=nums[i];
}
ret^=numsSize;
return ret;
}Train of thought two :
Before finding out n+1 Sum of numbers , Subtract the number in the array , It's the disappearing number .
int missingNumber(int* nums, int numsSize){
int i=0;
int sum=0;
for(i=0;i<numsSize+1;i++){
sum+=i;
}
for(i=0;i<numsSize;i++){
sum-=nums[i];
}
return sum;
}Train of thought three :
Open up another large space array , The number of the original array is used as the index of the new array , Then mark it as 1, Then traverse the new array instead of 1 The index of is what you want .
int missingNumber(int* nums, int numsSize){
int i;
int* tmp=(int* )malloc(sizeof(int)*(numsSize+1));
for(i=0;i<numsSize;i++){
tmp[nums[i]]=1;
}
for(i=0;i<numsSize;i++){
if(tmp[i]!=1)
break;
}
return i;
}Train of thought four :
Hashtable
int missingNumber(int* nums, int numsSize){
int f[10000]={0};
int i;
for(i=0;i<numsSize;i++){
f[nums[i]]++;
}
for(i=0;i<10000;i++){
if(f[i]==0)
break;
}
return i;
}Is there any good way , Leave a message in the comment area and we will discuss .
边栏推荐
- Global and Chinese market of air fryer 2022-2028: Research Report on technology, participants, trends, market size and share
- Pueue data migration from '0.4.0' to '0.5.0' versions
- How can people not love the amazing design of XXL job
- Golang defer
- Machine learning -- neural network (IV): BP neural network
- How to display √ 2 on the command line terminal ̅? This is actually a blog's Unicode test article
- Hands on deep learning (32) -- fully connected convolutional neural network FCN
- Leetcode (Sword finger offer) - 35 Replication of complex linked list
- PHP personal album management system source code, realizes album classification and album grouping, as well as album image management. The database adopts Mysql to realize the login and registration f
- Fabric of kubernetes CNI plug-in
猜你喜欢

IIS configure FTP website

165 webmaster online toolbox website source code / hare online tool system v2.2.7 Chinese version

2022-2028 global intelligent interactive tablet industry research and trend analysis report

Hands on deep learning (33) -- style transfer

Hands on deep learning (38) -- realize RNN from scratch

QTreeView+自定义Model实现示例

How can people not love the amazing design of XXL job

2022-2028 global optical transparency industry research and trend analysis report

Nuxt reports an error: render function or template not defined in component: anonymous

5g/4g wireless networking scheme for brand chain stores
随机推荐
Global and Chinese market of sampler 2022-2028: Research Report on technology, participants, trends, market size and share
Exercise 9-4 finding books (20 points)
Logstack configuration details -- elasticstack (elk) work notes 020
SSM online examination system source code, database using mysql, online examination system, fully functional, randomly generated question bank, supporting a variety of question types, students, teache
Global and Chinese market of wheel hubs 2022-2028: Research Report on technology, participants, trends, market size and share
2022-2028 global protein confectionery industry research and trend analysis report
How can Huawei online match improve the success rate of player matching
Fabric of kubernetes CNI plug-in
Kubernetes CNI 插件之Fabric
Write a jison parser from scratch (1/10):jison, not JSON
C语言指针面试题——第二弹
Golang type comparison
Deadlock in channel
lolcat
C # use gdi+ to add text with center rotation (arbitrary angle)
2022-2028 global seeder industry research and trend analysis report
Hands on deep learning (41) -- Deep recurrent neural network (deep RNN)
Explanation of closures in golang
Write a jison parser from scratch (3/10): a good beginning is half the success -- "politics" (Aristotle)
Pueue data migration from '0.4.0' to '0.5.0' versions