【11】链表分割
【題目】
編寫代碼,以給定值x為基準將鏈表分割成兩部分,所有小于x的結點排在大于或等于x的結點之前 給定一個鏈表的頭指針 ListNode* pHead,請返回重新排列后的鏈表的頭指針。注意:分割以后保持原來的數據順序不變。【代碼】
import java.util.*;/* public class ListNode {int val;ListNode next = null;ListNode(int val) {this.val = val;} }*/ public class Partition {public ListNode partition(ListNode pHead, int x) {if (pHead == null)return pHead;ListNode curNode = pHead;ListNode smallNode = new ListNode(-1);ListNode smallHead = smallNode;ListNode bigNode = new ListNode(-1);ListNode bigHead = bigNode;while (curNode != null){if (curNode.val >= x){bigNode.next = curNode;bigNode = bigNode.next;} else {smallNode.next = curNode;smallNode = smallNode.next;}curNode = curNode.next;}smallNode.next = bigHead.next;bigNode.next = null;return smallHead.next;} }?
轉載于:https://www.cnblogs.com/noaman/p/6950066.html
總結
- 上一篇: unity3d为对象添加脚本的两种方法
- 下一篇: 组件中props参数的应用