LeetCode147_Insertion Sort List(用插入排序算法对链表进行排序) Java题解
来源:互联网 发布:soc软件品牌 编辑:程序博客网 时间:2024/06/05 20:10
题目:
Sort a linked list using insertion sort.
题解:
插入排序就是先对一部分进行排序 排序好后将未排序的插入到已经排序好的队列中 在插入的时候 如果是数组的话可以从前往后 也可以从后往前 对于链表就只能是前者了
代码:
public static ListNode insertionSortList(ListNode head) {ListNode fakeNode=new ListNode(-1);fakeNode.next=head;if(head==null)return null;ListNode cur=head.next;//从第二个节点开始遍历ListNode pre=head;//排好序的最后一个节点while(cur!=null){if(cur.val<pre.val){ListNode nextNode=cur.next;//保存下一个需要遍历的节点//寻找插入的合适位置ListNode cur2=fakeNode.next;ListNode temp=fakeNode;//记录cur2前面一个节点while(cur.val>cur2.val&&cur2!=pre){ temp=cur2;cur2=cur2.next;}//进行插入temp.next=cur;cur.next=cur2;pre.next=nextNode;//继续遍历下一个节点cur=nextNode;}else {pre=cur;cur=cur.next;}}return fakeNode.next; }
0 0
- LeetCode147_Insertion Sort List(用插入排序算法对链表进行排序) Java题解
- leetcode——Insertion Sort List 对链表进行插入排序(AC)
- 静态链表插入排序(List Insertion Sort)算法
- leetcode题解-链表排序算法 147. Insertion Sort List && 148 . Sort List
- 【LeetCode-面试算法经典-Java实现】【147-Insertion Sort List(链表插入排序)】
- LeetCode-147. Insertion Sort List (JAVA)链表插入排序
- Insertion Sort List 链表插入排序
- Insertion Sort List 链表插入排序
- 【Java核心技术】Collections.sort对list进行排序
- Java-Collections的sort方法对list进行排序
- JAVA对list集合进行排序Collections.sort()
- Java-Collections的sort方法对 list 进行排序
- leetcode_效率题解_[python/C++]_147. Insertion Sort List(链表插入排序)
- Collections.sort方法对list进行排序
- 使用Collections.sort对List进行排序
- Collections.sort对list进行排序
- [学习总结][算法]用插入排序对一个链表进行排序
- list---java List 排序 Collections.sort() 对 List 排序
- iOS SQLite、CoreData、FMDB数据库详解
- /proc/loadavg详解
- 数据分析之美:决策树R语言实现
- 在linux服务器部署java web
- 程序猿的活动
- LeetCode147_Insertion Sort List(用插入排序算法对链表进行排序) Java题解
- 百度地图提供服务——本地搜索,范围搜索
- JNI编程
- 百度地图提供服务——本地搜索,范围搜索
- Algorithms—86.Partition List
- 【android】利用service监听来电或来信息
- Linux Socket编程
- gdb调试命令
- 树莓派Raspbian系统定制 - LXDE桌面系统定制 - 基本概念