nElems = 0
arr = [77,99,44,55,22,88,11,00,66,33]
for j in range(len(arr)):
# display items
print arr[j] ,
print ''
searchKey = 66
# find item with key 66
for j in range(len(arr)):
if(arr[j] == searchKey):
break
if(j == len(arr)):
print 'Cant find ', searchKey
else:
print 'Found ' ,searchKey
searchKey = 55
for j in arr:
if(j == searchKey):
arr.remove(searchKey)
for j in range(len(arr)):
# display items
print arr[j] ,
print ''
class LowArray:
def __init__(self,size):
self.a = []
for i in range(size):
self.a.append(0.0)
def setElem(self,index,value):
# set value
self.a[index] = value
def getElem(self,index):
return self.a[index]
arr = LowArray(100)
arr.setElem(0,77)
arr.setElem(1,99)
arr.setElem(2,44)
arr.setElem(3,55)
arr.setElem(4,22)
arr.setElem(5,88)
arr.setElem(6,11)
arr.setElem(7,00)
arr.setElem(8,66)
arr.setElem(9,33)
nElems = 10
# now 10 items in array
for j in range(nElems):
# display items
print arr.getElem(j) ,
print ''
searchKey = 26
find = False
# search for data item
for j in range(nElems):
# for each element,
if(arr.getElem(j) == searchKey): # found item?
find = True
break
if(not find):
print "Can't find " , searchKey
else:
print "Found " , searchKey
for j in range(nElems):
if(arr.getElem(j) == 55):
arr.a.remove(55)
nElems -= 1
for j in range(nElems):
# display items
print arr.getElem(j) ,
class HighArray:
def __init__(self,size):
self.a = []
self.nElems = 0
for i in range(size):
self.a.append(0.0)
def insert(self,value):
# set value
self.a[self.nElems] = value
self.nElems += 1
def find(self,searchKey):
for j in range(self.nElems):
if(self.a[j] == searchKey):
return True
return False
def delete(self,value):
for j in range(self.nElems):
# look for it
if (value == self.a[j]):
self.a.remove(value)
self.nElems -= 1
def display(self):
for j in range(self.nElems+1):
print self.a[j] ,
print ''
arr = HighArray(100)
arr.insert(77)
arr.insert(99)
arr.insert(44)
arr.insert(55)
arr.insert(22)
arr.insert(88)
arr.insert(11)
arr.insert(00)
arr.insert(66)
arr.insert(33)
arr.display()
searchKey = 35
if( arr.find(searchKey) ):
print "Found " , searchKey
else:
print "Can't find " , searchKey
arr.delete(00)
arr.delete(55)
arr.delete(99)
arr.display()
class OrdArray:
def __init__(self,m):
self.a = []
self.nElems = 0
def size(self):
return self.nElems
def find(self,searchKey):
lowerBound = 0
upperBound = self.nElems-1
while True:
curIn = (lowerBound + upperBound ) / 2
if(self.a[curIn]==searchKey):
return curIn
elif(lowerBound > upperBound):
return self.nElems
else:
if(self.a[curIn] < searchKey):
lowerBound = curIn + 1
else:
upperBound = curIn - 1
def insert(self,value):
self.a.append(value)
self.a.sort()
self.nElems += 1
def delete(self,value):
j = self.find(value)
if(j==self.nElems):
return False
else:
self.a.remove(value)
self.nElems -=1
def display(self):
for i in self.a:
print i ,
print ''
maxSize = 100
arr = OrdArray(maxSize)
arr.insert(77)
arr.insert(99)
arr.insert(44)
arr.insert(55)
arr.insert(22)
arr.insert(88)
arr.insert(11)
arr.insert(00)
arr.insert(66)
arr.insert(33)
searchKey = 55
if( arr.find(searchKey) != arr.size() ):
print 'Found ' , searchKey
else:
print "Can't find " , searchKey
arr.display()
arr.delete(00)
arr.delete(55)
arr.delete(99)
arr.display()
class Person:
def __init__(self,last,first,a):
self.lastName = last
self.firstName = first
self.age = a
def displayPerson(self):
print "Last name: " , self.lastName ,", First name: " , self.firstName ,
print ", Age: " , self.age
def getLast(self):
return self.lastName
class ClassDataArray:
def __init__(self,m):
self.a = []
self.nElems = 0
def find(self,searchName):
f = False
for j in range(self.nElems):
if( self.a[j].getLast() ==searchName ) :
f = True
break
if(not f):
return None
else:
return self.a[j]
def insert(self,last,first,age):
self.a.append(Person(last, first, age))
self.nElems += 1
def delete(self,searchName):
f = False
for j in range(self.nElems):
if( self.a[j].getLast() == searchName) :
self.a.remove(self.a[j])
f = True
self.nElems -= 1
break
if(not f):
return False
else:
return True
def displayA(self):
for j in range(self.nElems):
self.a[j].displayPerson()
maxSize = 100
arr = ClassDataArray(maxSize)
arr.insert("Evans", "Patty", 24)
arr.insert("Smith", "Lorraine", 37)
arr.insert("Yee", "Tom", 43)
arr.insert("Adams", "Henry", 63)
arr.insert("Hashimoto", "Sato", 21)
arr.insert("Stimson", "Henry", 29)
arr.insert("Velasquez", "Jose", 72)
arr.insert("Lamarque", "Henry", 54)
arr.insert("Vang", "Minh", 22)
arr.insert("Creswell", "Lucinda", 18)
arr.displayA()
searchKey = "Stimson"
found=arr.find(searchKey)
if(found != None ):
print "Found " ,
found.displayPerson()
else:
print "Can't find " , searchKey
print "Deleting Smith, Yee, and Creswell"
arr.delete("Smith")
arr.delete("Yee")
arr.delete("Creswell")
arr.displayA()