美文网首页
Python 将链表逆序

Python 将链表逆序

作者: Gi_So | 来源:发表于2019-03-05 14:59 被阅读0次

说明:链表逆序,是将链表中的单向链表逆序,双向链表逆序和正序都是一样的,所以没有任何意义。


代码:

class Node(object):

    def __init__(self):

        self.value = None

        self.next = None

    def __str__(self):

        return str(self.value)

def revise_loop(head):

    if not head or not head.next:

        return head

    pre = None

    while head:

        next = head.next

        head.next = pre

        pre = head

        head = next

    return pre


测试代码:

if __name__=='__main__':

    three = Node()

    three.value = 3

    two = Node()

    two.value = 2

    two.next = three

    one = Node()

    one.value = 1

    one.next = two

    head = Node()

    head.value = 0

    head.next = one

    new_head = revise_loop(head)

    while new_head:

        print (new_head.value,)

        new_head = new_head.next


结果:

相关文章

  • Python 将链表逆序

    说明:链表逆序,是将链表中的单向链表逆序,双向链表逆序和正序都是一样的,所以没有任何意义。 代码: class N...

  • 单链表逆序操作学习

    前言 将单链表逆序,方法有三种: 遍历链表,将每个节点的内容存入一个数组中,然后逆序输出数组,并重新构造一个链表 ...

  • python数据结构——单链表

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

  • Leetcode-Medium-2 Add Two Number

    题目 思路 给定两哥数字非负的单链表,每条单链表逆序存储着一个数字。将两条单链表存储的数字相加,并逆序放入单链表中...

  • 双向链表

    1、双向链表 单链表只能从头结点first开始访问链表中的数据元素,如果需要逆序访问单链表中的数据元素将极其低效。...

  • 1-a. 链表逆序

    已知链表头结点指针head,将链表逆序。(不可申请额外空间) 如图: 解题思路: 依次遍历链表结点,每遍历一个结点...

  • 2.单链表

    该部分包含以下内容-单链表的增删改查-计算链表长度-逆序链表-寻找(删除)链表倒数第K个元素-逆序打印链表(使用栈)

  • 数据结构与算法学习 (04)双向链表和双向循环列表

    1双向链表单链表只能从头结点开始访问链表中的数据元素,如果需要逆序访问单链表中的数据元素将极其低效。双链表是链表的...

  • LeetCode 2. Add Two Numbers

    单链表逆序相加

  • 单链表的逆转

    方法一 将原先的链表节点摘取下来,使用头结点插入的方法再插入,最后实现单链表的逆序 方法二

网友评论

      本文标题:Python 将链表逆序

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