后端开发刷题 | 反转链表【链表篇】

描述

给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。

数据范围: 0≤n≤1000

要求:空间复杂度 O(1)O(1) ,时间复杂度 O(n)O(n) 。

如当输入链表{1,2,3}时,

经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。

以上转换过程如下图所示:

示例1

输入:

复制代码
{1,2,3}

返回值:

复制代码
{3,2,1}

示例2

输入:

复制代码
{}

返回值:

复制代码
{}

说明:

复制代码
空链表则输出空        

思路:

代码:

java 复制代码
import java.util.*;
 

public class Solution {
    /**
     *
     * 
     * @param head ListNode类 
     * @return ListNode类
     */
    public ListNode ReverseList (ListNode head) {
        if(head==null){
            return null;
        }
        ListNode pre=null;
        ListNode next=null;
        while(head!=null){
            next=head.next;
            head.next=pre;
            pre=head;
            head=next;
        }

        return pre;

    }
}
相关推荐
愚农搬码5 分钟前
一款企业级电子表单系统应该具备哪些功能?
后端
炸薯条!15 分钟前
博客系统测试报告
开发语言·lua
Evand J23 分钟前
【MATLAB例程12】永磁同步电机基于增广无迹卡尔曼滤波的未知负载转矩在线观测
开发语言·matlab
Rain的Java大神之路26 分钟前
国家数据集团校招、社招都开了:总部雄安,这些技术岗值得认真看看
java·后端·面试
一去不复返的通信er28 分钟前
排序 + 双指针:力扣15三数之和
算法·leetcode
XW29 分钟前
Agent 上下文管理实现详解:从窗口工程到长期记忆
后端
Moment30 分钟前
为什么这么多 Agent Harness 都选择 TypeScript
前端·后端·面试
吴名氏.34 分钟前
Java转AI Agent教程(第九周)错误矩阵
java·人工智能·矩阵·ai agent
文丑颜不良啊37 分钟前
LeetCode1901~1920题目解析
java·leetcode