zoukankan      html  css  js  c++  java
  • 单向链表逆转

    1. 复制到数组中然后进行数组倒序插入成新链表;

    2. 申请一片新内存, 依次复制,比较浪费内存。  

    3.定义3个指针, 依次修改。

    这里写第三种:

    struct Node{
      int data;
      Node *next;
    };
    Node* Reverse3(Node *pHead){
      Node *pPrev;
      Node *PNext;
      pPrev = NULL;
      pNext = NULL;
      while(pHead){
        pNext = pHead->next;
        pHead->next = pPrev;
        pPrev = pHead;
        pHead = pNext;
      }
      return pPrev;
    }

    //原理是 三个指针分别指向前三个元素, 改变第一个和第二个指向,然后依次后推
  • 相关阅读:
    enum
    高可用复用类
    int 和 Integer 的区别
    MysqlMd5加密
    软件测试例子
    Wordcount
    大气登录页面
    生成二维码的JAVA
    多态的理解
    打印低头思故乡 java
  • 原文地址:https://www.cnblogs.com/hustcpp/p/9841915.html
Copyright © 2011-2022 走看看