leetcode 143. 重排链表

给定一个单链表 L:L0→L1→…→Ln-1→Ln ,
将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→…

你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。

示例 1:

给定链表 1->2->3->4, 重新排列为 1->4->2->3.

代码

/*** 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 void reorderList(ListNode head) {double n = 0;if(head==null) return;ListNode cnt = head;while (cnt != null) {//统计节点数n++;cnt = cnt.next;}ListNode r = head;for (int i = 0; i < Math.ceil(n / 2)-1; i++) {//找出中间节点r = r.next;}ListNode cur = r.next, pre = null;r.next=null;//将链表切割成两个while (cur != null) {//将后面部分的链表逆序ListNode temp = cur.next;cur.next = pre;pre = cur;cur = temp;}while (pre != null) {//合并两个链表ListNode np = pre.next, nh = head.next;head.next = pre;pre.next = nh;pre = np;head = nh;}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/392807.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

砝码称重 洛谷 1441

题目&#xff1a; 题目描述 现有n个砝码&#xff0c;重量分别为a1&#xff0c;a2&#xff0c;a3&#xff0c;……&#xff0c;an&#xff0c;在去掉m个砝码后&#xff0c;问最多能称量出多少不同的重量&#xff08;不包括0&#xff09;。 输入输出格式 输入格式&#xff1a; 输…

计算机音乐 phd,美国大学音乐(Music)专业PhD排名

为方便学生们选校&#xff0c;总结整理出NRC公布的美国大学音乐(Music)专业PhD排名&#xff0c;供学生们参考。排名大学Regres QualitySurvey QualityStudent OutcomesJobs at GradDiversity1-1Indiana University-BloomingtonFolklore1-11-136-5775%4-82-3Harvard UniversityM…

android开发使用c+_如何在Android项目中开始使用C ++代码

android开发使用cby Onur Tuna通过Onur Tuna 如何在Android项目中开始使用C 代码 (How to start using C code in your Android project) Last year I gave a talk at the GDG DevFest in Ankara, Turkey. I have been planning to share that talk here ever since. Now that…

PowerShell与活动目录

自从发布以来&#xff0c;Windows PowerShell已经成为Windows自动化平台的选择。它的强大和灵活已经在许多环境中被许多Windows技术所证明。不幸的是&#xff0c;在活动目录支持方面&#xff0c;PowerShell 1并没有什么可以炫耀。从基础角度&#xff0c;微软提供了ADSI“类型加…

408计算机组成原理有汇编吗,2021考研408计算机组成原理习题:计算机系统概述

10月是2021考研学子们备考的突破提升阶段&#xff0c;我们在复习专业课时&#xff0c;需要结合一定量的练习题来查漏补缺。接下来&#xff0c;小编为计算机考研考生们&#xff0c;带来了408统考计算机组成原理习题:计算机系统概述&#xff0c;供考生参考。2021考研408计算机组成…

react 文本框_React自动完成文本框

react 文本框In this React tutorial for beginners you will learn to create a basic React app and an autocomplete text box React component.在这个面向初学者的React教程中&#xff0c;您将学习创建一个基本的React应用程序和一个自动完成的文本框React组件。 This vid…

MyBatis-Plus入门Demo详解

一.简介: 引用官方文档(本文主要参考官方文档示例): MyBatis-Plus&#xff08;简称 MP&#xff09;是一个 MyBatis 的增强工具&#xff0c;在 MyBatis 的基础上只做增强不做改变&#xff0c;为简化开发、提高效率而生。 愿景 我们的愿景是成为 MyBatis 最好的搭档&#xff0c;就…

RHEL 5基础篇—常见系统启动类故障

常见系统启动类故障 在linux系统的启动过程中&#xff0c;涉及到MBR主引导记录、GRUB启动菜单、系统初始化配置文件inittab等各方面&#xff0c;其中任何一个环节出现故障都有可能会导致系统启动失败。因此一定要注意做好相关文件的备份工作。 1、MBR扇区故障 MBR引导记录位…

hcharts生成图表

借助hcharts插件&#xff0c;可以很方便地在模板页面中生成图表。类似插件还有echarts。 补充。。。 转载于:https://www.cnblogs.com/Forever77/p/11144346.html

css empty_何时使用:empty和:blank CSS伪选择器

css emptyI made a terrible mistake when I tweeted about :empty and :blank a while ago. I said that :empty wasn’t useful, and :blank is much more useful than :empty.不久前我在Twitter上发布:empty和:blank时&#xff0c;我犯了一个严重的错误。 我说过:empty没用&…

浙江大学计算机系统结构,高级计算机体系结构-浙江大学计算机系统结构室.pdf...

高级计算机体系结构-浙江大学计算机系统结构室高级计算机体系结构陈文智 浙江大学计算机学院chenwzzju.edu.cn2014年9月11.1 计算机技术发展综述(1)1946年: 在二次世界大战期间研制成功的世界上第一台电子计算机ENIAC(Electronic Numerical Intergrator andCalculator)正式对…

PVS 6.1 Configuring Services Failed

好久没有更新了&#xff0c;嘿嘿&#xff0c;更新一个。 项目中遇到一个问题&#xff0c;PVS安装到最后一步报错&#xff0c;如下图&#xff1a; 环境&#xff1a;PVS 6.1&#xff0c;数据库是SQL Server 2005 SP4 查了一下文档&#xff0c;PVS 6.1支持SQL Server 2005 SP4 排查…

javascript动态创建table

function createTable(parentNode,headres,datas){//创建表格var table document.createElement("table");//将表格追加到父容器中parentNode.appendChild(table);//设置table的样式table.cellSpacing 0;table.cellPadding 0;table.border "1px";//创建…

leetcode 234. 回文链表(快慢指针+链表倒置)

请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 代码 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) { val x; }* }*/…

面试小问题——Object中有哪些常用方法?

一、equals方法 Object类中的equals方法用于检测一个对象是否等于另外一个对象。Java语言规范要求equals方法具有下面的特性&#xff1a; &#xff08;1&#xff09;自反性&#xff1a;对于任何非空引用x&#xff0c;x.equals(x)应该返回true &#xff08;2&#xff09;对称性&…

职称计算机证书 评中级职称,软考证书如何申请评职称及职称申请流程的详细介绍...

我们很多考友参加软考。比如信息系统项目管理师和系统集成项目管理工程师考试&#xff0c;目的都是为了评职称&#xff0c;那么在拿到软考证书后&#xff0c;很多人最关心的一个问题就是关于职称评聘问题&#xff0c;今天就以软考证书如何申请评职称及职称申请流程的详细介绍&a…

播客51:妈妈可以编码的创始人埃里卡·彼得森(Erica Peterson)

On todays episode of the freeCodeCamp.org podcast, Abbey Rennemeyer chats with Erica Peterson, a founder, entrepreneur, and mother of two who lives and works in Pittsburg, Pennsylvania.在freeCodeCamp.org播客的今天节目中&#xff0c;Abbey Rennemeyer与Erica P…

leetcode 1024. 视频拼接(dp/贪心)

你将会获得一系列视频片段&#xff0c;这些片段来自于一项持续时长为 T 秒的体育赛事。这些片段可能有所重叠&#xff0c;也可能长度不一。 视频片段 clips[i] 都用区间进行表示&#xff1a;开始于 clips[i][0] 并于 clips[i][1] 结束。我们甚至可以对这些片段自由地再剪辑&am…

java实现时钟方法汇总

import java.awt.Dimension; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask;import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; //第一种比较…

js中注册标识符流程

注册分为三个阶段&#xff1a;分别是注册阶段&#xff0c;函数处理阶段&#xff0c;变量处理阶段&#xff1b;这三个阶段有先后顺序的。&#xff08;注&#xff1a;这三个阶段的名字没有权威性&#xff0c;是作者为了方便记忆自己起的名字&#xff09; 注册阶段的特征 1.此时不…