On 20/04/15 01:36, niy mor wrote:
Is my code completing the assignment???

No.

I need some *guidance* on
completing my assignment.

Try running your code.
Then fix the errors.
If you can't fix them come back to us and ask for help,
including the error message and a description of what
happened and what you expected.

My Attempt Code:
class SparseLifeGrid :

     Cell = ["row", "col"]

What is this for?

     def __init__( self ):
         self._rowList = []
         self._colList = []
         self._cellSet = set()

     def _binarySearch( self, target ) :
         low = 0
         high = len(self._cellSet - 1)
         while low <= high :
             mid = (high + low) // 2
         if theList[mid] == target :
             return (True, mid)
         elif target < theList[mid] :
             high = mid - 1
         else :
                 low = mid + 1

         return (False, low)

This just tells you which half the item is in.
Is that what you wanted?

     def minRange( self ):
         return (sorted(self._rowList)[0], sorted(self._rowList)[0])

This returns the same value twice.

     def maxRange( self ):
         return (sorted(self._rowList, reverse = True)[0],\
                 sorted(self._colList, reverse = True)[0])

You don;t need the line continuation character (/) if you are inside parens.

def f():
   return (expression1,
           expression2)

      # Clears the individual cell (row, col) and sets it to dead. If the
cell is
      # already dead, no action is taken
     def clearCell( self, row, col ):
         for item in self :
             if item == Cell(row, col) :
                 self.remove(item)

How do you expect to iterate over self? self is your class instance
but it has nothing to iterate over?

     def setCell( self, row, col ):
         LIVE_CELL = 1
         Cell[row, col] = LIVE_CELL

Here you create a new Cell instance then try to assign a value to it, then throw it away. I'm pretty sure thats not what you want.

     def isLiveCell( self, row, col):
         return Cell(row,col) in self

Again how are you testing 'in' self. There is nothing in
your class to support that.


     def numLiveNeighbors( self, row, col ):
         surround = 0
         if self.isLiveCell(row + 1, col) :
             surround += 1
         if self.isLiveCell(row - 1, col) :
             surround += 1
         if self.isLiveCell(row, col + 1) :
             surround += 1
         if self.isLiveCell(row, col - 1) :
             surround += 1

How many neighbours does a cell have in a Life grid?
Is it only 4?


--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos


_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to