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

锦州网站建设工作如何快速网络推广

锦州网站建设工作,如何快速网络推广,创意文字设计,手机网站开发设计包括什么1. 题目 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 示例 1: 输入:head [1,2,3,4] 输出&#x…

1. 题目

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。

示例 1:
在这里插入图片描述
输入:head = [1,2,3,4]
输出:[2,1,4,3]

示例 2:
输入:head = []
输出:[]

示例 3:
输入:head = [1]
输出:[1]

2. 题解

/*** 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 swapPairs(ListNode head) {if(head == null || head.next == null){return head;}ListNode next = head.next;head.next = swapPairs(next.next);next.next = head;return next;}
}

3. 解释

出自这位老师:画手大鹏

  1. public ListNode swapPairs(ListNode head) 是方法声明,表示这个名为swapPairs的方法接受一个参数,即链表的头节点。该方法返回一个ListNode类型的值。

  2. if(head == null || head.next == null){ return head; } 如果链表为空或只有一个节点,那么直接返回这个单独的节点作为结果(因为没有需要交换的元素)。

  3. ListNode next = head.next; 获取第二个节点。

  4. head.next = swapPairs(next.next); 递归调用函数来处理下一对,并将结果链接到当前头部。这样做是为了保持列表的顺序(因为我们正在交换每一对)。

  5. next.next = head; 将第一个节点设置为第二个节点的后继节点。这行代码实际上是完成了两个节点的交换。

  6. return next; 返回新的头部,即刚刚交换的那个节点。

  7. 这段代码的时间复杂度是O(n),空间复杂度是O(1),其中n是链表中的节点数量。因为我们只使用了一个常数量的额外变量,不管输入的大小如何,所花费的时间和空间都是恒定的。

http://www.dtcms.com/a/405961.html

相关文章:

  • 科技网站建设公司wordpress必做
  • Webpack5 第二节
  • npm、pnpm、npx 三者的定位、核心差异和「什么时候该用谁」
  • 在 C# .NETCore 中使用 MongoDB(第 2 部分):使用过滤子句检索文档
  • AWS Quicksight实践:从零到可视化分析
  • 微服务注册中心 Spring Cloud Eureka是什么?
  • websocket链接
  • 【oceanbase】Oracle模式查看pl慢sql
  • 电子商务网站规划的流程网站备案申请模板
  • 旺道网站优化公众号怎么推广
  • 内存卡标识全解析:从存储到性能的密码
  • 动态的魔法:列表与条件渲染
  • 乐清联科网站建设wordpress divi 数据
  • ARM单片机中断及中断优先级管理详解
  • python软件操作
  • c++_day2
  • 数据通信与计算机网络-交换
  • 2026考研时间,定了
  • 转:Ubuntu20.04安装NVIDIA驱动+CUDA超详细安装指南
  • 软件系统设计课程-Day1-从用户投诉到系统需求
  • 飞浪网站建设网站开发毕业设计任务书
  • JavaScript学习笔记(十二):call、apply和bind使用指南
  • Java外功基础(1)——Spring Web MVC
  • 【双机位A卷】华为OD笔试之【DP】双机位A-构建数列【Py/Java/C++/C/JS/Go六种语言】【欧弟算法】全网注释最详细分类最全的华子OD真题题解
  • 基于PyTorch深度学习无人机遥感影像目标检测、地物分类及语义分割实践技术应用
  • 基于PyTorch深度学习遥感影像地物分类与目标检测、分割及遥感影像问题深度学习优化实践技术应用
  • Kafka如何保证消息可靠性
  • 前端面经-高级开发(华为od)
  • 网站建设与 维护实训报告范文wordpress 上传网站吗
  • 基于深度学习神经网络协同过滤模型(NCF)的视频推荐系统