news 2026/8/16 12:40:17

【剑指Offer】026. 重排链表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【剑指Offer】026. 重排链表

给定一个单链表L的头节点head,单链表L表示为:

L0 → L1 → … → Ln-1 → Ln
请将其重新排列后变为:

L0 → Ln → L1 → Ln-1 → L2 → Ln-2 → …

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

/** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListNode next; * public ListNode(int val=0, ListNode next=null) { * this.val = val; * this.next = next; * } * } */ public class Solution { public void ReorderList(ListNode head) { // 思路:将列表中的所有节点添加到栈中,每次插入时就从栈中取出 // 边界条件:head不能为null或者head.next不能为null if (head == null || head.next == null) return; // 将所有的节点压入栈中 Stack<ListNode> nodeStack = new Stack<ListNode>(); // 定义一个peekNode指向栈顶节点 ListNode peekNode = head; while (peekNode != null) { nodeStack.Push(peekNode); peekNode = peekNode.next; } peekNode = nodeStack.Peek(); // 定义一个preNode指向当前的前一个执行了插入的节点,初值为null ListNode preNode = null; // 定义一个nextNode指向下一个需要执行插入的节点,初值为head ListNode nextNode = head; // 临时节点 ListNode tmpNode = null; // 进行一个while循环,循环条件为preNode不能等于栈顶节点或者nextNode不能等于栈顶节点 while ( preNode != peekNode && nextNode != peekNode) { tmpNode = nextNode.next != peekNode ? nextNode.next : null; // 执行插入操作 preNode = nextNode; nextNode.next = peekNode; peekNode.next = tmpNode; nodeStack.Pop(); peekNode = nodeStack.Peek(); nextNode = tmpNode; } // 质空尾部 if(nextNode != null) nextNode.next = null; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/14 19:49:34

强脑科技的核心硬件模组为何选择蓝思量产?

&#x1f4cc; 目录&#x1f527; 98%良品率碾压同行&#xff01;蓝思科技拿下强脑科技核心订单&#xff1a;十年磨一剑的精密制造“变态级”秘籍一、碾压级优势&#xff1a;98%良品率背后&#xff0c;是“灰尘都要登记身份证”的严苛标准&#xff08;一&#xff09;十年合作沉…

作者头像 李华
网站建设 2026/8/7 23:58:22

走进自动洗车房时你可能不知道,背后有套PLC200在掌控全局。今天咱们拆解这个自动洗车系统的控制逻辑,手把手看明白那些梯形图里的“小心机

PLC200控制的自动洗车系统自动洗车电气控制系统带解释的梯形图接线图原理图图纸&#xff0c;io分配&#xff0c;组态画面先说硬件布局&#xff0c;洗车机核心就三件套&#xff1a;红外车辆检测、喷淋电机组、旋转刷系统。IO分配表可以这么记&#xff1a;输入点X0-X3对应启动/急…

作者头像 李华
网站建设 2026/8/16 0:01:31

Z-Image-Edit支持语义分割指导编辑吗?未来方向

Z-Image-Edit 支持语义分割指导编辑吗&#xff1f;未来方向 在当前AI图像生成技术飞速发展的背景下&#xff0c;用户早已不再满足于“生成一张好看但不可控的图”。越来越多的应用场景要求模型不仅能理解语言指令&#xff0c;还能精准地对图像特定区域进行修改——比如把模特身…

作者头像 李华
网站建设 2026/8/3 23:03:07

大语言模型(LLM)入门:人工智能领域的颠覆性突破,系统解析其概念、技术、影响与未来趋势!

作为人工智能领域近十年最具颠覆性的技术突破之一&#xff0c;大语言模型&#xff08;LLM&#xff09;正以其强大的文本理解与生成能力&#xff0c;打破传统自然语言处理的技术边界&#xff0c;渗透到科研、产业及日常生活的多个场景。本文将从概念解析、技术原理、优劣势分析、…

作者头像 李华
网站建设 2026/7/31 7:48:54

Z-Image-ComfyUI实战指南:如何在16G显存设备上运行阿里最新文生图模型

Z-Image-ComfyUI实战指南&#xff1a;如何在16G显存设备上运行阿里最新文生图模型系统架构与核心价值 在当前AIGC创作门槛不断下探的背景下&#xff0c;一个关键矛盾日益凸显&#xff1a;用户渴望使用高质量大模型进行图像生成&#xff0c;但消费级硬件的显存容量却成了“拦路虎…

作者头像 李华