链表反转C++
来源:互联网 发布:电脑管家mac版 编辑:程序博客网 时间:2024/04/30 16:48
从头到尾遍历原链表,每遍历一个结点,将其摘下放在新链表的最前端。注意链表为空和只有一个结点的情况。时间复杂度为O(n)。参考代码如下:
#include <cstdio>//链表反转ListNode *list_invert(ListNode *phead){ if(phead == NULL) return NULL; ListNode *ptemp1 = phead->next;//你先走 ListNode *ptemp2 = phead;//我殿后 ListNode *newHead = phead; ptemp2->next = NULL; while(ptemp1 != NULL) { ptemp2 = ptemp1; ptemp1= ptemp1->next; ptemp2->next = newHead; newHead = ptemp2; } return newHead;}
0 0
- c链表反转
- 【C++】反转链表
- 【C/C++】反转链表
- C 单向链表反转
- 反转链表-C语言实现
- c语言--通过栈反转链表
- 递归方法反转单向链表(C/C++)
- C链表操作(删除节点、反转链表)
- C递归实现单向链表的反转
- C递归实现单向链表的反转
- C递归实现单向链表的反转
- 一个链表创建、反转、打印的C语言代码
- C递归实现单向链表的反转
- C 链表的反转(数据结构与算法)
- C链表反转(时间复杂度O(n))
- 链表反转C实现(递归与循环)
- (C语言)链表的反转(一次遍历)
- 【C++】PAT(basic level)1025. 反转链表 (25)
- Appium - WebView测试(Android)
- PAT How Long Does It Take (25) (拓扑排序)
- 原串翻转
- 数据结构学习记录-1
- 全局变量赋值问题
- 链表反转C++
- 指针中星号的位置问题
- java的System.getProperty()方法详解
- 代理模式的扩展
- redis 在Java中使用
- 数据结构(C语言版) 线性表顺序表示与实现
- 在TP-LINK WR841N v7上安装OpenWrt和U-Boot/Breed教程
- jobdu1021字符统计
- android程序员养成记录----------开篇(写给自己的话)