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

Reply via email to