【IT笔试面试题整理】反转链表
来源:互联网 发布:好看的美国电影 知乎 编辑:程序博客网 时间:2024/05/01 17:17
【试题描述】定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点
【参考代码】
方法一:
1 public static Link reverseLinkList(Link head) 2 { 3 if (head == null || head.next == null) 4 return head; 5 6 Link pre = null; 7 Link cur = head; 8 Link back = head.next; 9 10 while (back != null)11 {12 cur.next = pre;13 pre = cur;14 cur = back;15 back = back.next;16 }17 cur.next = pre; // 当current为最后一个节点时,back为null,所以要再指向前节点18 head = cur;19 20 return head;21 }
方法二:
1 public static Link reverseLinkList2(Link head) 2 { 3 if (head == null || head.next == null) 4 return head; 5 Link p1 = head; 6 Link p2 = p1.next;// p2其实记录的下一步递归过程后的尾结点 7 head = reverseLinkList2(p2); 8 p2.next = p1; 9 p1.next = null;10 return head;11 }
阅读全文
0 0
- 【IT笔试面试题整理】反转链表
- 【IT笔试面试题整理】丑数
- 【IT笔试面试题整理】位操作
- 【IT笔试面试题整理】链表
- 【IT笔试面试题整理】判断链表是否存在环路,并找出回路起点
- 【IT笔试面试题整理】给定二叉树,给每层生成一个链表
- 【IT笔试面试题整理】二叉搜索树转换为双向链表
- 笔试面试题整理
- 【IT笔试面试题整理】海盗分宝石
- 【IT笔试面试题整理】不用加减乘除做加法
- 【IT笔试面试题整理】字符串的排列
- 【IT笔试面试题整理】字符串的组合
- 【IT笔试面试题整理】堆栈和队列
- 面试题-反转链表
- 链表反转---面试题
- IT公司笔试面试题
- 整理的笔试面试题
- 百度笔试面试题整理
- 【IT笔试面试题整理】字符串的排列
- 【IT笔试面试题整理】字符串的组合
- TCP/IP协议三次握手和四次挥手大白话解说
- 【IT笔试面试题整理】寻找二叉树两节点的最近的公共祖先
- 20171215Capstone培训班
- 【IT笔试面试题整理】反转链表
- 【IT笔试面试题整理】字符串转数组+数组转字符串
- 【IT笔试面试题整理】判断链表是否存在环路,并找出回路起点
- 【IT笔试面试题整理】判断一个二叉树是否是平衡的?
- 关于笔记本安装Deepin 或者ubuntu操作系统,无法进入界面。
- 【IT笔试面试题整理】删除无序链表中重复的节点
- 如何配置MySQL数据库超时设置
- 【IT笔试面试题整理】判断一个树是否是另一个的子树
- 【IT笔试面试题整理】有序数组生成最小高度二叉树