• 单向链表倒置


      在笔试中经常到将一个单向链表倒置的问题,看了网上的一些解法,觉得头插法是一种比较好的做法,记下来,供自己参考..

    在数据结构(严蔚敏版)线性表一节中,有一个逆序创建链表的算法,头插法和这个算法差不多,区别就是逆序创建链表是用给出的数字序列创建链表,而头插法是在原来的链表中从第一个节点开始,每次取出一个节点,然后把这个节点插在头节点后面,直到最后一个节点插到头节点后面,那么原来的链表就倒置了..

    下面是C++代码

    LNode *Reverse(LNode *Head)
    {
       LNode 
    *p=Head->next;
       LNode 
    * q=NULL;
       Head
    ->next=NULL;
       
    while(p)
       {
         q
    =p->next;   //保存下一个节点的指针

         p
    ->next=Head->next;
         Head
    ->next=p;       //把取出的节点插入到头节点的后面

         p
    =q;
      }
      
    return Head;
    }
  • 相关阅读:
    批归一化(Batch Normalization)
    NLP | 文本风格迁移 总结
    LeetCode: Word Ladder
    LeetCode: Longest Consecutive Sequence
    LeetCode: Sum Root to Leaf Numbers
    LeetCode: Surrounded Regions
    LeetCode: Palindrome Partition
    LeetCode: Clone Graph
    LeetCode: Gas Station
    LeetCode: Candy
  • 原文地址:https://www.cnblogs.com/MichaelGuan/p/1419939.html
Copyright © 2020-2023  润新知