博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
递归、非递归 反转单链表
阅读量:6823 次
发布时间:2019-06-26

本文共 755 字,大约阅读时间需要 2 分钟。

定义链表结构

struct ListNode{    int val;    ListNode *next;    ListNode(int v) : val(v), next(NULL) {}};

非递归反转单链表

ListNode* reverse(ListNode *root){    if (root == NULL || root->next == NULL)        return root;    ListNode *cur = root->next;    root->next = NULL;    while (cur != NULL)    {        ListNode *tmp = cur->next;        cur->next = root;        root = cur;        cur = tmp;    }    return root;}

递归反转单链表

void reverseRec(ListNode *root, ListNode *&head){    if (root == NULL)        return;    if (root->next == NULL)    {        head = root;        return;    }    reverseRec(root->next, head);    root->next->next = root;    root->next = NULL;}

测试

 
View Code

 

本文转自jihite博客园博客,原文链接:http://www.cnblogs.com/kaituorensheng/p/3955101.html,如需转载请自行联系原作者

你可能感兴趣的文章
效率比较--集合
查看>>
jmeter IF控制器学习--使用实例
查看>>
memory prefix retro,re out 2
查看>>
WebDriver API 实例详解(四)
查看>>
dom01
查看>>
Android实例-如何使用系统剪切板(XE8+小米2)
查看>>
BAT-显示桌面图标
查看>>
PDO vs. MySQLi 选择哪一个?(PDO vs. MySQLi: Which Should You Use?)-转载
查看>>
信息安全系统设计基础第七周总结
查看>>
创建线程的三种方式
查看>>
Android项目依赖于第三方库(非jar包文件)
查看>>
cas HttpServletRequestWrapperFilter
查看>>
【Javascript第二重境界】函数
查看>>
SpringBoot 与 Web开发
查看>>
JavaWeb 三层框架
查看>>
BOOL, BOOLEAN, bool
查看>>
Mac 下 SVN 的使用
查看>>
简述session
查看>>
Android APK反编译教程(带工具)
查看>>
SSO单点登录学习总结(1)——单点登录(SSO)原理解析
查看>>