什么公司设计网站建设,wordpress题库,html网站设计实例代码,制作图片网站
#x1f525;个人主页#xff1a;guoguoqiang. #x1f525;专栏#xff1a;leetcode刷题 LeetCode :LCR 173. 点名
这个题就是缺失的数字#xff0c;我们可以通过三种方式来解决这个问题。 1.可以通过位异或的方式来找到这个数#xff08;相同的数异或为…
个人主页guoguoqiang. 专栏leetcode刷题 LeetCode :LCR 173. 点名
这个题就是缺失的数字我们可以通过三种方式来解决这个问题。 1.可以通过位异或的方式来找到这个数相同的数异或为0
class Solution {
public:int takeAttendance(vectorint records) {int ret0;for(auto n:records) ret^n;//遍历整个数组for(int i0;irecords.size();i){//遍历全部数ret^i;}return ret;}
};2.通过哈希表来实现观察这个题中的数据可以通过使用数组来实现
class Solution {
public:int takeAttendance(vectorint records) {int hash[10001]{0};for(auto ch:records) hash[ch];for(int i0;irecords.size();i){//遍历数if(!hash[i]) return i;//如果不在哈希表中说明就是缺失的那个值。}return -1;//leetcode的检查机制}
};3.二分查找
class Solution {
public:int takeAttendance(vectorint records) {int left0,rightrecords.size()-1;while(leftright){int midleft(right-left)/2;if(records[mid]mid) leftmid1;//如果相等则证明不是要找这个数跳过else rightmid;}if(records[left]!left) return left;//缺失值在数组中间else return left1;//缺失值在数组的最后一个位置}
};4.暴力搜索
class Solution {
public:int takeAttendance(vectorint records) {if(records[0]1) return 0;int nrecords.size();for(int i0;in;i){if(records[i]!i) return i;}return records.size();}
};5.数学高斯求和公式
class Solution {
public:int takeAttendance(vectorint records) {int nrecords.size();int sum0;for(auto x:records){sumx;}return (n1-1)*(n1)/2-sum;}
};