代码随想录day4:链表总结

news/2025/3/5 3:19:53/

两两交换链表中的节点

一开始自己的思路只是两两交换,并没有说涉及到前一个节点。实际上两两交换涉及到了三个节点
使用虚拟头结点,这样一次性处理三个节点。且每次组里第一个节点其实数值没变。

class Solution {
public:ListNode* swapPairs(ListNode* head) {ListNode* dummyhead = new ListNode(0);dummyhead->next=head;ListNode* cur=dummyhead;while(cur->next != nullptr && cur->next->next != nullptr){ListNode* temp1 = cur->next;ListNode* temp2 = cur->next->next->next;cur->next=cur->next->next;cur->next->next=temp1;temp1->next=temp2;cur=cur->next->next;}return dummyhead->next;}
};

迭代法:发现的规律是,本质上一组同时改变新的节点。重复的是,原来head-》next也就是newhead变成了新的头结点。而且要每次返回交换顺序的头结点给上一组。

class Solution {
public:ListNode* swapPairs(ListNode* head) {if(head == nullptr || head->next == nullptr) return head;ListNode* newhead= head->next;head->next = swapPairs(newhead->next);newhead->next=head;return newhead;}
};

http://www.ppmy.cn/news/1184759.html

相关文章

postgresSQL 数据库本地创建表空间读取本地备份tar文件与SQL文件

使用pgAdmin4,你安装PG得文件夹****/16/paAdmin 4 /runtime/pgAdmin4.exe 第一步:找到Tablespaces 第二步:创建表空间名称 第三步:指向数据文件 第四步:找到Databases,创建表空间 第五步:输入数…

系列九、什么是Spring bean

一、什么是Spring bean 一句话,被Spring容器管理的bean就是Spring bean。

Python对json文件的读取和处理

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它通过易于读取和编写的文本格式来传输和存储数据。在JSON中,数据被保存为键值对的形式。比较常见的JSON键值对形式为:key:value。其中,key为…

C语言浮点型在内存中的存储

目录 前言: 引言: 浮点数存储规则 举个栗子: TIP: 单精度浮点数存储的模型(float) 双精度浮点数存储的模型(double) IEEE对 M 的特殊规定 IEEE对 E 的特殊规定 小试牛刀 先…

谈谈我对 Reacitive 方法的理解

本文我想和大家分享一下我对当前 Reactivity 方法和现状的理解。我并不是说我的观点就是对的,但我认为,正是通过分享自己的观点,我们才能对行业中的事物达成共识,我希望这些来之不易的见解能够对其他人有所帮助,并补充…

10391 - Compound Words (UVA)

题目链接如下&#xff1a; Online Judge 代码如下&#xff1a; #include <iostream> #include <string> #include <vector> #include <set> // #define debugint main(){#ifdef debugfreopen("0.txt", "r", stdin);freopen(&qu…

VPS是什么?详解亚马逊云科技Amazon Lightsail(VPS)虚拟专用服务器

2006年&#xff0c;南非开普敦&#xff0c;亚马逊推出了WBS&#xff0c;以网络服务的形式向企业提供基础的IT服务。亚马逊云科技的一小步&#xff0c;在无数技术更迭&#xff0c;天才设计师和程序员的努力与基础设施建设的完善之下成为了人类科技进展的一大步。 亚马逊云科技可…

leetCode 260.只出现一次的数字 ||| + 位运算

260. 只出现一次的数字 III - 力扣&#xff08;LeetCode&#xff09; 给你一个整数数组 nums&#xff0c;其中恰好有两个元素只出现一次&#xff0c;其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。你必须设计并实现线性时间复杂度的算法且…