当前位置: 首页 > article >正文

力扣--LCR 141.训练计划III

题目

给定一个头节点为 head 的单链表用于记录一系列核心肌群训练编号,请将该系列训练编号 倒序 记录于链表并返回。

示例 1:

输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]

示例 2:

输入:head = [1,2]
输出:[2,1]

示例 3:

输入:head = []
输出:[]

提示:

链表中节点的数目范围是 [0, 5000]
-5000 <= Node.val <= 5000

代码

/**

  • Definition for singly-linked list.

  • public class ListNode {

  • int val;
    
  • ListNode next;
    
  • ListNode() {}
    
  • ListNode(int val) { this.val = val; }
    
  • ListNode(int val, ListNode next) { this.val = val; this.next = next; }
    
  • }
    */
    class Solution {
    public ListNode trainningPlan(ListNode head) {
    if(headnull||head.nextnull){
    return head;
    }
    ListNode cur = head, pre = null;

     while(cur != null){
         ListNode temp = cur.next;
         cur.next = pre;
         pre = cur;
         cur = temp;
     }
    
     return pre;
    

    }
    }
    时间复杂度:O(N)
    额外空间复杂度 O(1)

递归
// 递归
public ListNode reverseList(ListNode head) {
if(head == null || head.next == null){
return head;
}
// 反转子链表
ListNode temp = reverseList(head.next);
head.next.next = head;
head.next = null;

    return temp;
}

时间复杂度:O(N)
额外空间复杂度 O(n),递归调用需要消耗栈空间


http://www.kler.cn/a/405358.html

相关文章:

  • Shell编程-8
  • ant-design-vue中table组件多列排序
  • 笔记记录 k8s-RBAC
  • 电解车间铜业机器人剥片技术是现代铜冶炼过程中自动化和智能化的重要体现
  • NLP论文速读(MPO)|通过混合偏好优化提高多模态大型语言模型的推理能力
  • js批量输入地址获取经纬度
  • 二十:HTML Form表单提交时的协议格式
  • 银河麒麟v10 x86架构二进制方式kubeadm+docker+cri-docker搭建k8s集群(证书有效期100年) —— 筑梦之路
  • C++ 中的智能指针
  • 设计模式之 桥接模式
  • HarmonyOS中UIAbility和windowStage的区别
  • 【企业级分布式系统】Ceph集群
  • Hadoop 系列 MapReduce:Map、Shuffle、Reduce
  • uniapp接入高德地图
  • 【更新】中国省级产业集聚测算数据及协调集聚指数数据(2000-2022年)
  • Python+Selenium+Pytest+Allure+ Jenkins webUI自动化框架
  • 七次课掌握 Photoshop:绘画与修饰
  • librdns一个开源DNS解析库
  • 垂起固定翼无人机搭载高清三光(4K可见+红外+激光测距)吊舱图像采集技术详解
  • FileProvider高版本使用,跨进程传输文件
  • 主IP地址与从IP地址:深入解析与应用探讨
  • 锂电池学习笔记(一) 初识锂电池
  • 浅谈Python库之lxml
  • 24小时自动监控,自动录制直播蓝光视频!支持抖音等热门直播软件
  • RUST学习教程-安装教程
  • 使用 PyTorch TunableOp 加速 ROCm 上的模型