码迷,mamicode.com
首页 > 其他好文 > 详细

数据结构:单向循环链表(二)

时间:2020-05-14 11:11:44      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:直接   一个   链表的操作   ret   链表   思路   elf   self   单链表   

单向循环链表的操作

length()返回链表的长度

思路:当头节点为空的时候,直接返回0

   其它情况下,先确定循环条件,之前单链表的cur != None这一条件不适用于此,因为最后一个节点会指向头节点,即此时是cur.next==self.__head

   而cur==self.__head同样不可取,第一个节点就满足,循环马上退出

   count计算应该从1开始,因为如果一开始count=0的话,此时cur指向第一个节点,之前是因为cur会指向None,count能够正常计数,这时候应该从1开始计,而0的情况(就链表为空),先提前判断

class SinCycLinkedlist(object):
    def __init__(self,node=None):
        self.__head=node
        if node:
            node.next=self.__head

    def length(self):
        cur=self.__head
        if self.__head==None:
            return 0
        count=1
        while cur.next != self.__head:
            count=+1
            cur=cur.next
        return count

  

 

数据结构:单向循环链表(二)

标签:直接   一个   链表的操作   ret   链表   思路   elf   self   单链表   

原文地址:https://www.cnblogs.com/cong3Z/p/12886589.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!