摘要: 单向循环链表的操作 remove(item) 删除元素 思路:1、当链表为空,直接返回即可 2、设置两个指针,一个指向当前节点,另一个指向前一个节点; 3、循环遍历,循环条件:cur.next != self.__head 4、进入循环,判断cur.item是否大于item 这时候分情况考虑,如果第 阅读全文
posted @ 2020-05-14 14:53 Roronoa-Zoro 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 单向循环链表的操作 search(item) 查找元素在不在链表当中 思路:1、当链表为空,直接返回False 2、循环遍历查找,循环条件:cur.next != self.__head 在循环里面进行判断 cur.item == item 3、当cur.next = self.__head的时候, 阅读全文
posted @ 2020-05-14 10:41 Roronoa-Zoro 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 单向循环链表的操作 add(item)在头部添加元素 思路:1、先将新节点添加到头部,让node.next=self.__head 以及让self.__head=node 2、进行遍历,循环条件: 最后一个节点现在指向第二个节点,即cur.next = node.next;找到最后一个节点之后,将c 阅读全文
posted @ 2020-05-14 10:27 Roronoa-Zoro 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 单向循环链表的操作 travel() 遍历链表中所有元素 思路:跟之前的单链表一样,循环输出即可;要注意的是最后一个节点时,此时cur.next指向头节点,而没有进入循环,而cur指向该节点,跳出循环后,单独把最后一个节点的元素打印出来就可以了(当链表中只有一个元素,也可以处理) 注意:同时也要考虑 阅读全文
posted @ 2020-05-14 10:01 Roronoa-Zoro 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 单向循环链表的操作 length()返回链表的长度 思路:当头节点为空的时候,直接返回0 其它情况下,先确定循环条件,之前单链表的cur != None这一条件不适用于此,因为最后一个节点会指向头节点,即此时是cur.next==self.__head 而cur==self.__head同样不可取, 阅读全文
posted @ 2020-05-14 09:49 Roronoa-Zoro 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 单向循环链表的操作 class SingleNode(object): def __init__(self,item): self.item=item self.next=None class SingleList(object): def __init__(self,node=None): sel 阅读全文
posted @ 2020-05-13 22:16 Roronoa-Zoro 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 单链表的操作 remove(item) 删除节点 思路:1、首先这需要遍历,需要找到这个元素 2、找到这个元素节点后,让前一个节点指向后一个节点就可以,用到两个指针,注意第一个元素是要删除的元素,要让头节点指向下一个节点 class SingleLinkList(object): def __ini 阅读全文
posted @ 2020-05-13 21:45 Roronoa-Zoro 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 单链表的操作 insert(pos, item) 指定位置添加元素 思路:1、当pos<0的时候,我们将其视为在头部添加元素 2、当pos远大于整个链表的长度,我们将视为在尾部添加元素 3、中间添加时,我们应该先让新节点的next指向原来pos处的节点,即node.next=(pos-1).next 阅读全文
posted @ 2020-05-13 20:52 Roronoa-Zoro 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 单链表的实现 1、add(item) 链表头部添加元素 class SingleNode(object): """单链表的结点""" def __init__(self,item): self.item=item self._head=None class SingleLinkList(object 阅读全文
posted @ 2020-05-12 20:37 Roronoa-Zoro 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 单链表的操作 search(item) 查找节点是否存在 1 class SingleLinkList(object): 2 def __init__(self): 3 self._head=None 4 def search(self,item): 5 #判断节点存在是否 6 cur=self._ 阅读全文
posted @ 2020-05-12 20:19 Roronoa-Zoro 阅读(86) 评论(0) 推荐(0) 编辑