Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- >>> a
- [[[[[], [], 8, 3], [[], [], 3, 2], 6, 3], [], 1, 4], [[], [], -4, 2], 0, 0]
- >>> Keys(a)#With a+b
- [0, 1, 6, 8, 3, -4]
- >>> Keys(a)#With [a,b]
- [8, [...], [...], 3, [...], [...], 6, [...], [...], 1, [...], [...], -4, [...], [...], 0, [...], [...]]
- >>> Keys(a)[1]#??
- [8, [...], [...], 3, [...], [...], 6, [...], [...], 1, [...], [...], -4, [...], [...], 0, [...], [...], 8, [...], [...], 3, [...], [...], 6, [...], [...], 1, [...], [...], -4, [...], [...], 0, [...], [...]]
- def Keys(x,y=[]):
- if len(x):y+=[x[2]]+Keys(x[0],y)+Keys(x[1],y)#Though it seems I was using y=y[:]+, this actually outputs an ugly mess
- return y
- def Keys(x,y=[]):
- if len(x):y+=[x[2],Keys(x[0],y),Keys(x[1],y)]
- return y
- >>> a = [1,2]
- >>> a.append(a)
- >>> a
- [1, 2, [...]]
- >>>
- return [x[2]]+keys(x[0])+keys(x[1])
- y += [x[2]]
- keys(x[0], y) #Add left children to y...
- keys(x[1], y) #Add right children to y...
- return y
- >>> a = [0, 1]
- >>> a[0] = a
- >>> a
- [[...], 1]
- >>> a = [0, 1]
- >>> a[0] = a
- >>> a
- [[...], 1]
- >>> a = [0, 1]
- >>> a[0] = a
- >>> a
- [[...], 1]
- >>> a = [0, 1]
- >>> a[0] = a
- >>> a
- [[...], 1]
- >>> a = [0, 1]
- >>> a[0] = a
- >>> a
- [[...], 1]
- >>> a = [0]
- >>> a.append(a)
- >>> print a
- [0, [...]]
- [0, [...]]
- [0, [0, [...]]]
- [0, [0, [0, [...]]]]
- [0, [0, [0, [0, [...]]]]]
- [0, [0, [0, [0, [0, [...]]]]]]
- ...
- print
- y = y[:]
- y+=[x[2]]+Keys(x[0],y)+Keys(x[1],y)
- y+=[x[2]]+Keys(x[0],y)+Keys(x[1],y)
- y+=[x[2]]+Keys(x[0],y)+Keys(x[1],y)
- y+=[x[2]]+Keys(x[0],y)+Keys(x[1],y)
- y+=[x[2],Keys(x[0],y),Keys(x[1],y)]
Add Comment
Please, Sign In to add comment