User:M.elhlaby

Algorithm
if length[A]=1 then Missing ← A[1] if A[1].bit[column]=0 then Missing.bit[column] ← 1 else Missing.bit[column] ← 0 return Missing else C0 ← 0 C1 ← 0 if length[A] (mod 2) = 0 then C0 ← 1 else C0 ← 0 for i ← 1 to length[A] if A[i].bit[column]=0 then C0 ← C0 + 1 else C1 ← C1 + 1 if C0 > C1 then lessBit ← 1 else lessBit ← 0 Create an Array B of length length[A]/2 j ← 1, i ← 1 while j <= length[B] do           if A[i].bit[column]=lessBit then B[j] ← A[i] j ← j + 1 i ← i+1 return Find-Missing(B,column + 1)