python中单链表中的is_empty和is_empty()有什么区别?

问题描述

我在python中创建了单链表,我想知道def delete_front(self)中'()'的主要功能是什么。

这是我的代码

class Node(object):
    def __init__(self,data):
        self.data = data
        self.next = None

class SLinkedList(object):
    def __init__(self):
        self.head = None
        self.size = 0
    
    def size(self):
        return self.size

    def is_empty(self):
        if self.size==0:
            return True
        else:
            return False

    def search(self,target):
        return 

    def insert_front(self,data):
        nw_node = Node(data)
        if self.is_empty():
            self.head = nw_node
        else:
            nw_node.next = self.head.next
            self.head.next = nw_node
    #p is pointer
    def insert_after(self,data,p):
        nw_node = Node(data)
        if p==self.size:
            p.next = nw_node
        else:
            nw_node.next = p.next
            p.next = nw_node

    def delete_front(self):
        if is_empty():
            return None
        else:
            tmp_node =self.head.next
            tmp_node.prev = self.head
            self.head.next = tmp_node.next

    def delete_after(self,p):
        if p==self.size:
            return None
        else:
            tmp_node = p.next
            p.next = tmp_node.next

    def print_list(self):
        node = self.head
        while node:
            print(node)
            node = node.next

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)