Python单向循环链表的创建方法

  介绍

小编给大家分享一下Python单向循环链表的创建方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

Python的五大特点是什么

Python的五大特点:1。简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本身。2。面向对象,与其他主要的语言如c++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。3。可移植性,Python程序无需修改就可以在各种平台上运行。4。解释性,Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。5。开源,Python是牙线(自由/开放源码软件)之一。

<强> 1,说明

当实例化一个单向循环链表时,该链表是一个空链表,在将节点依次链接之后,链表中才会出现节点和数据。

在链表中,为了找到链表的某个节点,需要从链表的头节点开始,依次搜索。因此,在实例单向循环链表中,必须定义链表的头。当添加头节点时,链表的头指向头节点。

<强> 2,实例

 class 节点(对象):
  ,,,def  __init__(自我,,elem):
  ,,,,,,,,,,
  ,,,,,,,:param  elem:,表元素域
  ,,,,,,,下:下一结点链接域
  ,,,,,,,光标(坏蛋):游标
  ,,,,,,,,,,
  ,,,,,,,self.elem =elem
  ,,,,,,,#,定义下指向空
  ,,,,,,,self.next =,没有
  ,
  ,
  class  SingleCircularLinkList(对象):
  ,,,,,,
  ,,,单向循环链表:单链表的一个变形是单向循环链表,链表中最后一个节点的下一个域不再为没有,而是指向链表的头节点
  ,,,,,,
  ,
  ,,,def  __init__(自我,,节点=None):
  ,,,,,,,self.__head =, node , #, node.elem  node.next
  ,,,,,,,if 节点:
  ,,,,,,,,,,,node.next =,节点
  ,
  ,,,def  is_empty(自我):
  ,,,,,,,“““链表是否为空,,,,,,
  ,,,,,,,return  self.__head  is 没有
  ,
  ,,,def 长度(自我):
  ,,,,,,,“““链表长度“““
  ,,,,,,,if  self.is_empty ():
  ,,,,,,,,,,,return  0
  ,,,,,,,#,坏蛋游标,用来移动遍历节点
  ,,,,,,,cur =self.__head
  ,,,,,,,count =1
  ,,,,,,,while  cur.next  !=, self.__head:
  ,,,,,,,,,,,count  +=1
  ,,,,,,,,,,,cur =cur.next
  ,,,,,,,,,,,#,count 记录数量
  ,,,,,,,return 计数
  ,
  ,,,def 旅行(自我):
  ,,,,,,,“““遍历整个链表“““
  ,,,,,,,if  self.is_empty ():
  ,,,,,,,,,,,回来
  ,,,,,,,cur =self.__head
  ,,,,,,,while  cur.next  !=, self.__head:
  ,,,,,,,,,,,印刷(cur.elem,,=& # 39;, & # 39;)
  ,,,,,,,,,,,cur =cur.next
  ,,,,,,,#,退出循环,坏蛋指向尾结点,但尾节点的元素未打印
  ,,,,,,,印刷(cur.elem)
  ,
  ,,,def 添加(自我,,项):
  ,,,,,,,“““链表头部添加元素:头插法“,“
  ,,,,,,,node =,节点(项)
  ,,,,,,,if  self.is_empty ():
  ,,,,,,,,,,,self.__head =,节点
  ,,,,,,,,,,,node.next =,节点
  ,,,,,,,其他的:
  ,,,,,,,,,,,cur =self.__head
  ,,,,,,,,,,,while  cur.next  !=, self.__head:
  ,,,,,,,,,,,,,,,cur =cur.next
  ,,,,,,,,,,,#,退出循环,坏蛋指向尾结点
  ,,,,,,,,,,,node.next =self.__head
  ,,,,,,,,,,,self.__head =,节点
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null

Python单向循环链表的创建方法