链表python

class Node(object):
    """节点"""
    def __init__(self,elem):
        self.elem = elem
        self.next = None
class SingeLinkList(object):
    """单链表以下对象方法"""
    def __init__(self,node = None):
        self._head = node

    def is_empty(self):
        return self._head == None
    #self作为对象属性,self必传
    def length(self):
        #cur用来移动,遍历节点
        #count用来计数
        cur = self._head
        count = 0
        #cur = None
        #cur.next = None
        while cur != None:
            count += 1
            cur = cur.next
        return count
    def travel(self):
        cur = self._head
        while cur !=None:
            print(cur.elem)
            cur = cur.next
        pass
    def add(self,item):
        pass
    def append(self,item):
        #构造函数把数据存为节点,就有了节点
        node = Node(item)
        if self.is_empty():
            self._head = node
        else:
            cur = self._head
            while cur.next != None:
                # 让新节点指向尾结点的next区
                cur = cur.next
            # 节点指向尾结点(尾结点就是新插入的节点)结束循环
            cur.next = node

        pass
    def insert(self,pos,item):
        pass
    def remove(self,item):
        pass
    def search(self,item):
        pass
if __name__ == '__main__':
    ll = SingeLinkList()
    print(ll.is_empty())
    print(ll.length())
    ll.append(1)
    print(ll.is_empty())
    print(ll.length())
    ll.append(2)
    ll.append(3)
    ll.append(4)
    ll.append(5)
    ll.travel()
#node = Node(100)
#single_object为一个链表对象
#single_object = SingeLinkList(node)
# single_object = SingeLinkList(node)
# single_object.append()
# class Student(object):
#     # self就是一个对象,对象里面有两个参数self.name,self.male
#     def __init__(self,name,male):
#         self.name = name
#         self.male = male
#     def intr(self):
#        sen = "i am " + self.name
#        return sen
# stu = Student("liusiyan","female")
#stu代表一个实例
# print(stu.intr())
# print(student.name)

Python数据结构与算法03——单链表、双链表、单项循环链表_哔哩哔哩_bilibiliicon-default.png?t=M276https://www.bilibili.com/video/BV1nK4y1v7uv?p=5

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值