Skip to content

Instantly share code, notes, and snippets.

@angri
Created June 13, 2012 13:55
Show Gist options
  • Save angri/2924221 to your computer and use it in GitHub Desktop.
Save angri/2924221 to your computer and use it in GitHub Desktop.
def missing(seq):
num_missing = 2
for i in xrange(num_missing):
seq.append(None)
for i in xrange(len(seq) - 2):
if seq[i] == i:
continue
number = seq[i]
while True:
value_on_numbers_index = seq[number]
if value_on_numbers_index == number \
or value_on_numbers_index is None:
break
seq[number] = number
number = value_on_numbers_index
res = []
for i in xrange(1, len(seq)):
if seq[i] != i:
res.append(i)
if len(res) == num_missing:
break
return res
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment