- Notifications
You must be signed in to change notification settings - Fork2.4k
Closed
Description
It seems some solutions differ from the video, for268-Missing-Number
this code is shown in the video and appears as the python solution on neetcode.io:
classSolution:defmissingNumber(self,nums:List[int])->int:res=len(nums)foriinrange(len(nums)):res+= (i-nums[i])returnres
However the Java, C++ and proposed Typescript solution (#422) use slightly different algorithms:
Java:
classSolution {publicintmissingNumber(int[]nums) {intsum =0;inttotal =nums.length * (nums.length+1)/2;for(inti =0;i <nums.length;i++){sum +=nums[i]; }returntotal -sum; }}
C++:
classSolution {public:intmissingNumber(vector<int>& nums) {int n = nums.size();int result = n;for (int i =0; i < n; i++) { result ^= i ^ nums[i]; }return result; }};
Typescript:
functionmissingNumber(nums:number[]):number{letsum:number=0lettotal:number=(nums.length*(nums.length+1))/2for(leti=0;i<nums.length;i++){sum+=nums[i]}returntotal-sum}