Murali wrote: > Given: L = list of integers. X and Y are integers. > Problem: find every occurrence of X and replace with Y
> Problem with both solutions is the efficiency. As everyone else says, you are hallucinating efficiency problems probably brought on by an overdose of Lisp or ML. Here is another way to get to what you want that will go "even faster" than the not-a-problem speed you have from simple compare and replace. lst = range(50) * 10 try: position = lst.index(X) while True: lst[position] = Y position = lst.index(X, position + 1) except ValueError: pass # finally could not find X I mention this only because people always seem to forget than index allows you to specify a start (and/or stop) position w/in the list. --Scott David Daniels [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list