1、append方法

向链表添加元素后。在链表中,不能通过索引来定位每个元素,只能在列表中定位。链表元素的.next方法需要被持续调用,以获得下一个元素,并最终获得最后一个元素。最后一个元素的.next属性中将指向新添加的元素。

def append(self, new_element):
current = self.head
if self.head:
while current.next:
current = current.next
current.next = new_element
else:
self.head = new_element

2、get_position方法

获得与传入参数对应的链表中的元素位置。

需要通过循环调用.next属性来遍历链表。不同的是我们需要定义一个变量counter来记录我们遍历的链表元素顺序。我们还需要在传入的参数获取不到链表元素时返回None。

def get_position(self, position):
counter = 1
current = self.head
if position < 1:
return None
While current and counter <= position:
if counter == position:
return current
current = current.next
counter += 1
return None
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。