Grokking the Coding Interview: Patterns for Coding Questions
Vote

0% completed

​

Problem Challenge 1: Find the Corrupt Pair (easy)

.....

.....

.....

Like the course? Get enrolled and start learning!
A

Anonymous

· 2 years ago

class Solution:   def findNumbers(self, nums):         def swap(i, j):       nums[i], nums[j] = nums[j], nums[i]     for i in range(len(nums)):       while nums[i] != i + 1 and nums[i] != nums[nums[i] - 1]:         swap(i, nums[i] - 1)     result = []     for i in range(len(nums)):       if nums[i] != i + 1:         result.append(nums[i])         result.append(i + 1)         return result     return None
A

Anonymous

· 3 years ago

function find_corrupt_numbers(nums) {     let duplicateNumber, currentIndex = 0, missingIndex;     while(currentIndex < nums.length) {         if(nums[currentIndex] == currentIndex+1) currentIndex++;         else {             let swapIndex = nums[currentIndex]-1;             if(nums[swapIndex] == nums[currentIndex]) {                 duplicateNumber = nums[swapIndex];                 missingIndex = currentIndex;                 currentIndex++;             }             else [nums[swapIndex], nums[currentIndex]] = [nums[currentIndex], nums[swapIndex]]         }     }     return [duplicateNumber, missingIndex+1]; }
Show 1 reply
A

Anonymous

· 4 years ago

solution Image

Reading Progress

0%


Vote for new content