美文网首页
链表的插入和遍历

链表的插入和遍历

作者: ___大鱼___ | 来源:发表于2019-08-22 15:42 被阅读0次
链表1.png 创建链表.png
# 链表

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

    def __str__(self):
        return str(self.item)


# 头插法
def create_linklist_head(li):
    head = Node(li[0])
    for ele in li[1:]:
        node = Node(ele)
        node.next = head
        head = node
    return head


# 尾插法
def create_linklist_tail(li):
    head = Node(li[0])
    tail = head
    for ele in li[1:]:
        node = Node(ele)
        tail.next = node
        tail = node
    return head


# 遍历链表
def print_linklist(head):
    while head:
        print(head.item)
        head = head.next


if __name__ == '__main__':

    node_head = create_linklist_tail([x for x in range(100)])
    print_linklist(node_head)  # 正序打印
    node_head = create_linklist_head([x for x in range(100)])
    print_linklist(node_head)  # 倒叙打印

相关文章

  • 1链表相关操作

    1.创建带头节点的链表,并且遍历输出。 题目 2.插入新链表,保持顺序,并遍历输出链表。 3.插入新的链表,并遍历...

  • 二、链表遍历框架

    很多链表题目都可以归结为链表的遍历,以及在遍历中做反转、插入和删除操作,因此可以使用链表遍历的框架来解题。链表遍历...

  • 链表的插入和遍历

  • python数据结构——单链表

    链表 python实现链表链表的初始化创建元素的插入和删除链表的遍历元素的查询链表的删除链表的逆序判断链表是否有环...

  • 链表

    一种线性数据结构。包含单向链表和双向链表。 单向链表的结构,操作(插入、删除和遍历)及其时间复杂度: 通常使...

  • 双链表的操作

    双链表的代码定义 双链表的操作 初始化双链表 插入 前插法 尾插法 任意位置插入 双链表的遍历输出 元素删除与双链...

  • 0x05双向循环链表

    1 双向循环链表创建 2 双向循环链表插入元素 3 遍历双向循环链表 4双向循环链表删除结点

  • 数据结构【单链表基本操作】

    包含单链表的创建、遍历、反转(指针替换、递归)、排序、插入、删除

  • Java集合类之HashMap源码学习笔记

    数组虽然可以随机访问,但插入和删除效率较低,链表虽然插入和删除效率较高,查找却只能通过遍历,而HashMap则基于...

  • 数据结构和算法-5.2-双端链表&双向链表

    双端链表 单链表要想在表尾插入一个链结点,需要遍历整个链表直到表尾,再进行插入,效率很低; 双端链表增加了对表尾链...

网友评论

      本文标题:链表的插入和遍历

      本文链接:https://www.haomeiwen.com/subject/ohnnsctx.html