力扣面试150题--分隔链表

day 39

题目描述

思路

遍历链表,每一个点与值比较,比值小就继续,比值大就放到链表尾部即可

java 复制代码
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode partition(ListNode head, int x) {
        if(head==null){
            return null;
        }
        ListNode fakehead=new ListNode();
        fakehead.next=head;
        ListNode z=head;
        while(z.next!=null){
            z=z.next;
        }
        ListNode before=fakehead;
        ListNode y=head;
        ListNode end=z;
        while(y!=end){
            if(y.val>=x){
                z.next=y;
                before.next=y.next;
                y=y.next;
                z=z.next;
                z.next=null;
            }
            else{
                before=before.next;
                y=y.next;
            }
        }
        if(y.val>=x){
                z.next=y;
                before.next=y.next;
                y=y.next;
                z=z.next;
                z.next=null;
            }
        return fakehead.next;
    }
}
相关推荐
菜小麒23 分钟前
面试问题-01
面试·职场和发展
朱容zr33313330 分钟前
为什么推荐使用自增主键?使用UUID作为主键的优缺点是什么?
java·运维·数据库·后端·mysql·面试·性能优化
艾莉丝努力练剑1 小时前
【Linux:动静态库】Linux 动静态库与可执行文件
linux·运维·服务器·学习·面试·文件系统·动静态库
李剑一1 小时前
再见前端,你好AI
面试·求职
HeiSenBerg1 小时前
Android IPC 深度解析:Binder 机制与 AIDL 实战
面试
城管不管2 小时前
重生——第五次面试2026.8.1一面
java·数据库·后端·ai·面试·职场和发展·agent
圣保罗的大教堂2 小时前
leetcode 3016. 输入单词需要的最少按键次数 II 中等
leetcode
代码代码快快显灵2 小时前
MYSQL—DAY1
面试·职场和发展
白白白小纯13 小时前
算法篇—反转链表
c语言·数据结构·算法·leetcode
圣保罗的大教堂16 小时前
leetcode 3517. 最小回文排列 I 中等
leetcode