insertion Sort List (链表的插入排序) leecode java
逻辑简单,代码难写,基础不劳,leecode写注释不能出现中文,太麻烦,我写了大量注释,链表问题最重要的就是你那个指针式干啥的
提交地址https://oj.leetcode.com/problems/insertion-sort-list/
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) {* val = x;* next = null;* }* }*/
public class Solution {public ListNode insertionSortList(ListNode head) {if(head==null) return head;ListNode h=new ListNode(-1000000); //加入头结点方面,特别适合头结点不断改变的情况,c++要释放掉,java直接返回头的next就可h.next=head;ListNode cur=head.next; //cur 保存当前处理的节点head.next=null; //别忘了,新链表的尾巴值为空while(cur!=null){ListNode nextNode=cur.next; //保存下一个要处理的点,因为cur会被插入的新链表中,所以保存,然后赋给cur(最后一句)ListNode l=h.next;ListNode pre=h;while(l!=null) //找到合适的插入位置,找pre地址{if(l.val<=cur.val){pre=l;l=l.next;}else{break;}}//insert into the listcur.next=pre.next;pre.next=cur;cur=nextNode;}return h.next;}}
转载于:https://www.cnblogs.com/hansongjiang/p/3814998.html
insertion Sort List (链表的插入排序) leecode java相关推荐
- LeetCode 147. Insertion Sort List 链表插入排序 C++/Java
LeetCode 147. Insertion Sort List 链表插入排序 C++/Java Sort a linked list using insertion sort. A graphic ...
- LeetCode OJ 147. Insertion Sort List
Sort a linked list using insertion sort. 对链表使用插入排序还是很简单的,从链表中拆下一个节点,然后把它插入到已经排序的部分的链表中,直到所有节点都被插入.代码 ...
- 插入排序(Insertion Sort)-Java实现
插入排序(Insertion Sort)算法简介: 插入排序是一种丛序列左端开始依次对数据进行排序的算法.在排序过程中,左侧的数据陆续归位,而右侧留下的就是还未被排序的数据. 插入排序(Inserti ...
- [转载] python实现基本算法之插入排序(Insertion Sort)
参考链接: Python中的插入排序insertion sort 基本算法之插入排序(Insertion Sort) 基本算法-02.插入排序(Insertion Sort)算法 冒泡排序已经发布,大 ...
- Java实现插入排序及其优化 insertion sort
本文带来八大排序算法之插入排序. 插入排序(Insertion Sort)属于内部排序算法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的. 插入排序基本思想: 把n个待排序的元 ...
- Java排序算法——插入排序(Insertion Sort)
之前总结了交换排序的冒泡排序与选择排序的简单选择排序,这次我们来看看插入排序的简单插入排序~ 往期传送门: 冒泡排序: Java排序算法--冒泡排序(Bubble Sort)https://blog. ...
- Insertion Sort List(单链表插入排序)
来源:https://leetcode.com/problems/insertion-sort-list Sort a linked list using insertion sort. 方法: 1. ...
- python实现排序算法_python实现·十大排序算法之插入排序(Insertion Sort)
简介 插入排序(Insertion Sort)是一种简单直观的排序算法.它的工作原理是:通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入. 算法实现步骤 从第一个元素开 ...
- c++Insertion Sort插入排序的实现算法(附完整源码)
C++Insertion Sort插入排序的实现算法 C++Insertion Sort插入排序的实现算法完整源码(定义,实现,main函数测试) C++Insertion Sort插入排序的实现算法 ...
最新文章
- DS18B20 理解与操作源码
- “参数”vs“参数”[重复]
- 【Python】JupyterLab 出 Windows 桌面版了!
- AVL树(平衡二叉树)讲解,入门篇,适合新手观看
- gradle入门_Gradle入门:简介
- 一些定义–测试技术9
- 持续更新的Zookeeper知识总结
- SQL Server下载安装
- 在Ubuntu 上怎么连接装有iOS 7的iPhone或iPad
- List of salaries for Silicon Valley intern
- Js 对象添加属性
- php无限次执行函数,php – 防止多次执行JavaScript函数
- 国产达梦数据库管理系统-通过Excel文件导入数据
- PHP 接口中echo die和return的区别
- ubuntu-UML画图工具 Virtual_Paradigm
- Deepin(2) 设置屏幕分辨率
- 数据结构与算法java - 03 链表,单向链表,逆序打印单向链表
- Android接入支付宝开发
- Qt面试笔试题问答经验总结
- 再谈BPM(业务流程管理)为企业带来哪些提升
热门文章
- 利用优盘安装win2008r2系统
- asp.net C# 将数据导出到Execl汇总
- 皮尔逊相关系数的计算(python代码版)
- Hadoop平台安全机制Kerberos认证
- Android项目中Bluetooth类如何写
- vivado中的rtl中电路图无发生成_Vivado 综合崩溃调试指南
- RocketMQ--生产者与消费者的简单示例
- MySQL 高级 - 存储过程 - 语法 - if判断 || 传递参数 (IN - 输入 OUT-输出)
- 将格式化的日期字符串转换为Unix时间戳(php)
- Python 缩进问题-inconsistent use of tabs and spaces in indentation.原因及解决方法