python链表及常见操作
- class Node:
- def __init__(self, initdata):
- self.data = initdata
- self.next = None
-
- def getData(self):
- return self.data
-
- def getNext(self):
- return self.next
-
- def setData(self, newdata):
- self.next = newdata
-
- def setNext(self, nextNode):
- self.next = nextNode
-
-
- temp = Node(93)
- temp.setData(10)
- print(temp.getNext())
-
- # 定义一个无序链表
- class UnorderedList:
- def __init__(self):
- self.head = None
-
- def isEmpty(self):
- return self.head == None
-
- def add(self, item):
- temp = Node(item)
- temp.setNext(self.head)
- self.head = temp
-
- def size(self):
- current = self.head
- count = 0
- while current != None:
- count += 1
- current = current.getNext()
- return count
-
- def search(self, item):
- current = self.head
- found = False
- while current != None and not found:
- if current.getData() == item:
- found = True
- else:
- current = current.getNext()
- return found
-
- def remove(self, item):
- current = self.head
- previous = None
- found = False
- while not found:
- if current.getData() == item:
- found = True
- else:
- previous = current
- current = current.getNext()
-
- if previous == None:
- self.head = current.getNext()
- else:
- previous.setNext(current.getNext())
-
- myList = UnorderedList()
- myList.add(31)
- myList.add(77)
- myList.add(17)
- myList.add(93)
- myList.add(26)
- myList.add(54)
- print(myList.search(17))
- myList.remove(54)
- print(myList.search(54))
解压密码: detechn或detechn.com
免责声明
本站所有资源出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户自行鉴别,做一个有主见和判断力的用户。
本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。