当前位置:网站首页>力扣每日一题(链表模拟)
力扣每日一题(链表模拟)
2022-07-27 05:21:00 【最后一只三脚兽】
剑指 Offer II 029. 排序的循环链表 - 力扣(LeetCode)

看了一些题解,感觉他们分类有点太细了,导致代码很多,其实就是三种情况
- head为null时,直接把head值改为需求值再让next指向自己即可
- 也是最一般情况,插入节点在一小一大两节点中间,只要找到一个节点val小于等于所插节点且该节点的next的val大于等于所插节点即可
- 极端情况,也就是所插节点恰好是最大值或是最小值,我们只要找到最大节点然后把插入的节点放最大节点后面即可(例如1,2,3,4 如果插入的是5就放4后,如果插入的是0也是放4后)。极端情况就是循环了一遍没找到第二种情况,此时就是极端情况
class Solution {
public Node insert(Node head, int insertVal) {
//节点为空
if(head == null){
head = new Node(insertVal);
head.next = head;
return head;
}
Node tmp = head;
Node max = head;
while(true){
//保留最大节点,避免二次遍历
max = tmp.val >= max.val?tmp:max;
//判断是否是一般情况
if(tmp.val<=insertVal && tmp.next.val>=insertVal){
Node node = new Node(insertVal,tmp.next);
tmp.next = node;
return head;
}
tmp = tmp.next;
//回到头节点,遍历结束
if(tmp==head){
break;
}
}
//极端情况
Node node = new Node(insertVal,max.next);
max.next = node;
return head;
}
}边栏推荐
- Chrome 如何快速将一组正在浏览的网页(tabs)转移到另一台设备(电脑)上
- 力扣题解 动态规划(3)
- C语言-自定义结构类型
- Speech and Language Processing (3rd ed. draft) Chapter 2 ——正则表达式,文本归一化,编辑距离 阅读笔记
- 韦东山 数码相框 项目学习(四)简易的TXT文档显示器(电纸书)
- 剪枝-量化-转onnx中文系列教程
- Unittest套件与运行器
- Auto Encoder(AE),Denoising Auto Encoder(DAE), Variational Auto Encoder(VAE) 区别
- Unity Shader 概述
- [first song] rebirth of me in py introductory training (6): definition and application of functions
猜你喜欢

韦东山 数码相框 项目学习(四)简易的TXT文档显示器(电纸书)

C# Json编码在TCP通讯中的一些使用总结

力扣每日一题 剑指 Offer II 091. 粉刷房子

LaTeX中多个公式公用一个序号时

Greedy high performance neural network and AI chip application research and training

面试常问Future、FutureTask和CompletableFuture
![[concurrent programming series 9] priorityblockingqueue, delayqueue principle analysis of blocking queue](/img/2b/1bfadbffad33f8560357fab74e8308.png)
[concurrent programming series 9] priorityblockingqueue, delayqueue principle analysis of blocking queue

C语言扫雷最新 递归展开 超详解(附源码)

Chrome 如何快速将一组正在浏览的网页(tabs)转移到另一台设备(电脑)上

超强远程连接管理工具:Royal TSX
随机推荐
STM32-红外遥控
Weidongshan digital photo frame project learning (II) displaying Chinese characters on LCD
回调使用lambda
链表回文判断
力扣题解 动态规划(3)
Live Home 3D Pro室内家居设计工具
安全帽反光衣检测识别数据集和yolov5模型
Acwing the number of square arrays of one question per day
【头歌】重生之我在py入门实训中(1)
编程学习记录——第5课【分支和循环语句】
[Haowen planting grass] knowledge of root domain name - Ruan Yifeng's Weblog
基于C#的Winform对Access数据库进行操作(mdb结尾)
【头歌】重生之我在py入门实训中(3): if条件语句
C语言-程序的编译
力扣题解 二叉树(6)
【Arduino】重生之Arduino 学僧(1)
常见的SQL优化方法
geonode geoserver win10 安装教程(亲测)
【11】二进制编码:“手持两把锟斤拷,口中疾呼烫烫烫”?
面试常问Future、FutureTask和CompletableFuture