来自LeetCode-24 这道题我们需要使用三个指针,除了指向相邻的两个元素外,还需要指向相邻两个元素的前一个元素 在开头设置好pre和pre.next,然后执行循环,把a,b挑出来,然后把next指针进行调换,即把a-b换成b-a,同时更新pre指针 首先看到最后 return self.nex ...
分类:
编程语言 时间:
2020-12-31 12:12:38
阅读次数:
0
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 限制: 0 ? 节点个数 ? 5000 1、双指针 /** * Definition for singly-linked ...
分类:
其他好文 时间:
2020-12-03 11:44:21
阅读次数:
3
前言以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获。每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢。注:如果你在看代码的时候发现代码排版乱了麻烦告诉我一声,谢谢。【题目描述】给定一个链表的头节点head,请判断该链表是否为回文结构。例如:1->2->1,返回true.1->2->2->1,返回true。1-&g
分类:
其他好文 时间:
2020-12-01 12:42:45
阅读次数:
13
翻转单链表是出现在 各大公司 的面试中频率最高的一题了!!! 有 头插法 和 递归法 两种实现方法,一次性写出 bug free 的代码不是件容易的事! 具体看下面的代码和注释 如下: 1 /** 2 * Definition for singly-linked list. 3 * struct L ...
分类:
其他好文 时间:
2020-11-19 13:01:57
阅读次数:
19
题目连接 92. 反转链表 II 题目分析 题目要求我们用一趟扫描完成旋转,我们只需要先把[m,n]这段区间内的链表定位了就容易做了。当我们完成定位后就是普通的三指针反转链表 代码实现 /** * Definition for singly-linked list. * public class L ...
分类:
其他好文 时间:
2020-11-11 16:43:05
阅读次数:
18
题目链接 链接:https://leetcode-cn.com/problems/reverse-linked-list/ 题目描述 反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你能否用 ...
分类:
其他好文 时间:
2020-11-11 16:33:27
阅读次数:
7
前言反转链表是程序员必备的基本素养,经常在面试、笔试的过程中出现。一直觉得反转链表实现代码不是很好理解,决定搬leetcode那道经典反转链表题出来,用十多张图去解析它,希望加深大家对链表反转的理解,谢谢阅读。leetcode的反转链表原题&答案题目描述:反转一个单链表。输入:1->2->3->4->5->NULL输出:5->4->3->2-
分类:
其他好文 时间:
2020-11-07 17:05:38
阅读次数:
14
题目介绍 给定二叉树,将其原地变成一个链表。 Example: 1 / \ 2 5 / \ \ 3 4 6 1 \ 2 \ 3 \ 4 \ 5 \ 6 Solutions 直观解法 发现链表的结果与先序遍历一致,因此先进行先序遍历,再根据遍历的结果构造链表。 # Definition for a b ...
分类:
其他好文 时间:
2020-10-26 11:17:57
阅读次数:
15
引言 线性表(三)——线性表(六)这四节笔者介绍了链表的实现及变形,本节将简单介绍几种链表的应用。 反转链表 问题来源: 力扣:206. 反转链表 问题简述: 给定一个链表,请将这个链表反转。 问题分析: 在顺序表中,我们常采用的反转手段是根据索引交换列表的前半段和后半段实现反转。但链表的存储方式不 ...
分类:
其他好文 时间:
2020-10-12 20:43:13
阅读次数:
33
题目链接:反转链表 方法一:递归解法 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} ...
分类:
其他好文 时间:
2020-09-24 21:55:20
阅读次数:
37