`

Reverse Linked List

阅读更多
Reverse a singly linked list.

反转一个单向链表,采用头插法,设定两个指针pre和tem,tem记录head的下一个元素,从head开始依次指向它前面的元素,同时pre不断后移。代码如下:
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
public class Solution {
    public ListNode reverseList(ListNode head) {
        ListNode pre = null;
        ListNode tem = null;
        while(head != null) {
            tem = head.next;
            head.next = pre;
            pre = head;
            head = tem;
        }
        return pre;
    }
}
分享到:
评论

相关推荐

    linked-list-reverse-output.rar_Reverse Linked List

    在计算机科学领域,数据结构是基础且至关重要的概念,它为高效地存储和处理数据提供了方法。本话题聚焦于一种常见的线性数据结构——单链表,并探讨如何对其进行逆序输出。逆序输出单链表涉及到对链表节点顺序的反转...

    fuxuemingzhu#Leetcode-Solution-All#92. Reverse Linked List II 反转

    进行一次遍历,把第m到n个元素进行翻转,即依次插入到第m个节点的头部。这个题还是有意思的。建议后面再多做几遍。Python代码如下:self.next = No

    c语言-leetcode题解之0092-reverse-linked-list-ii.zip

    在文件“c语言-leetcode题解之0092-reverse-linked-list-ii.zip”中,我们可以通过解压缩得到文件“0092_reverse_linked_list_ii”。这个文件很可能是C语言编写的代码文件,包含了实现“反转链表II”题目的算法逻辑...

    前端大厂最新面试题-linked-list.docx

    2. 反转链表(Reverse Linked List) 反转链表是将链表的方向反转,即将链表的头节点变为尾节点,尾节点变为头节点。这种操作可以用于解决一些特殊的问题,例如,反转链表以满足某些算法的要求。 知识点:反转链表...

    陈越、何钦铭-数据结构作业6:Reversing Linked List链表翻转

    Given a constant K and a singly linked list L, you are supposed to reverse the links of every K elements on L. For example, given L being 1→2→3→4→5→6, if K=3, then you must output 3→2→1→6→5→...

    Leetcode 反转链表.js

    LeetCode 206的题目是“反转链表”(Reverse Linked List),它要求将一个单链表的所有节点反转,并返回反转后链表的头节点。这是一个基础但非常重要的链表操作问题,它不仅考察了对链表数据结构的理解,还涉及到了...

    算法面试通关40讲完整课件 05-07 数组、链表

    1. 反转链表(Reverse Linked List, 如LeetCode的第206题):要求将链表的元素顺序反转。 2. 链表环检测(Linked List Cycle, 如LeetCode的第141题):判断链表中是否存在环,并找出环的起点。 3. 两两交换链表中的...

    leetcode不会-Leetcode-Java:Leetcode-Java

    leetcode 不会 Leetcode Solutions in Java Linked List Linked List ...linked list, ...快慢指针法,块指针从head.next开始,慢指针从head开始,快指针每次移动两格,慢...reverseList(ListNode head) 三个指针,依次往后

    leetcode盒子嵌套-leetcode-text:leetcode-文本

    92.Reverse Linked List II Runtime: 4 ms, faster than 67.04% of C online submissions for Reverse Linked List II. Memory Usage: 6.9 MB, less than 100.00% of C online submissions for Reverse Linked List ...

    1、基础算法必练题(含解法)).pdf

    17. **Reverse Linked List II**:在链表中删除指定范围内的节点并反转剩余部分。需要保持原有结构,同时进行翻转操作。 18. **Rotate List**:旋转链表,例如将链表的最后k个节点移动到前面。通过计算链表长度和...

    js-leetcode题解之92-reverse-linked-list-ii.js

    JavaScript解题之92号问题:反转链表II 在JavaScript中,反转链表是一个...最终,通过上述步骤,我们可以得到一个完整的js-leetcode题解之92-reverse-linked-list-ii.js的代码实现,成功地对链表的一部分进行了反转。

    leetcode-链表笔记

    Reverse Linked List**:反转整个链表。 - **21. Merge Two Sorted Lists**:合并两个已排序的链表,保持排序顺序。 - **142. Linked List Cycle II**:找到链表环的长度,并给出进入环的第一个节点。 4. **解决...

    Leetcode部分试题解析

    25. **Reverse Linked List**:反转链表。递归或迭代方法都可以实现。 26. **Binary Tree Paths**:找到二叉树的所有根到叶子的路径。使用DFS,记录路径并返回。 27. **Remove Linked List Elements**:移除链表中...

    Leetcode题目+解析+思路+答案.pdf

    - **Reverse Linked List**:反转链表。 - **Swap Nodes in Pairs**:交换链表中的相邻节点。 - **Sort List**:对链表进行排序。 - **Rotate List**:将链表顺时针旋转指定次数。 - **Reorder List**:按照...

    java-leetcode题解之206-Reverse-Linked-List

    Java LeetCode题解之206-Reverse-Linked-List是指在Java编程语言中对LeetCode上的第206号题目“反转链表”进行解答的过程。这是一个经典的算法与数据结构问题,通常作为算法入门的练习题,用于练习对链表这种数据...

    leetcode2sumc-LeetCode:LeetCode的一些题目

    leetcode 2 sum c LeetCode 帮助文档 帮助文档存放在Help文件夹下。 文件名 文件描述 ...complexitypython.txt Python的一些常规操作的复杂度统计 ...Reverse Linked List 234 Easy Palindrome Linked List

    LeetCode最全代码

    * [Linked List](https://github.com/kamyu104/LeetCode#linked-list) * [Stack](https://github.com/kamyu104/LeetCode#stack) * [Queue](https://github.com/kamyu104/LeetCode#queue) * [Heap]...

    leetcode_practice-源码

    链表则常用于处理链式结构的问题,如“反转链表”(Reverse Linked List)。 此外,文件中还可能包含一些辅助类或工具类,如`Utils.java`,它可能包含了一些通用的辅助函数,如打印数组、交换两个变量的值等,这些...

Global site tag (gtag.js) - Google Analytics