当前位置: 首页 > news >正文

链表分割

写代码,以给定值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) {
        // write code here
        if(pHead==null || pHead.next==null)
            return pHead;
        ListNode min = new ListNode(-1);
        ListNode max = new ListNode(-1);
        ListNode min_move = min;
        ListNode max_move = max;
        ListNode temp = pHead;
        while(temp!=null){
            if(temp.val<x)
            { min_move.next=temp; min_move = temp;}
            else{
                max_move.next=temp; max_move=temp;
            }
            temp = temp.next;
        }
        max_move.next = null;
        min_move.next = max.next;
        return min.next;
    }
}

相关文章:

  • void*
  • python requests.session 与 requests
  • 爬虫_urlencode问题
  • 如何实现MySQL的自动备份
  • 魔术索引
  • PIC数据采集系统---接口功能测试
  • 字符串排列
  • 数组中的逆序对
  • Windows 8 应用商店应用开发 之 氛围光传感器
  • 子串判断
  • arm汇编程序中的[|]
  • 实时中位数
  • 【spring】IllegalArgumentException Can not set field to $Proxy 在spring中使用事物或AOP遇到的错误...
  • 约瑟夫问题
  • C#实现UDP分包组包
  • [LeetCode] Wiggle Sort
  • AWS实战 - 利用IAM对S3做访问控制
  • CSS盒模型深入
  • input的行数自动增减
  • Java 实战开发之spring、logback配置及chrome开发神器(六)
  • java中的hashCode
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Redux 中间件分析
  • TypeScript迭代器
  • Vue.js-Day01
  • 回流、重绘及其优化
  • 记录一下第一次使用npm
  • 你真的知道 == 和 equals 的区别吗?
  • 如何学习JavaEE,项目又该如何做?
  • 算法-插入排序
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • NLPIR智能语义技术让大数据挖掘更简单
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #传输# #传输数据判断#
  • #前后端分离# 头条发布系统
  • (03)光刻——半导体电路的绘制
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (Note)C++中的继承方式
  • (poj1.3.2)1791(构造法模拟)
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (三)uboot源码分析
  • (一)基于IDEA的JAVA基础1
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • (转) Face-Resources
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • *Django中的Ajax 纯js的书写样式1
  • .Net 6.0 处理跨域的方式
  • .NET Core 2.1路线图