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

随机链表的复制数据结构oj题(CM11)

目录

问题描述

题目解读

解决代码


问题描述

题目解读

这里给了一个头结点pHead,和一个定值x,这里要的是比x值小的结点要在x这个结点的左边,并且这里写着不改变数据顺序,也就是相对顺序。比如:{5,2,1,3,6},x=3;最终返回的顺序为{2,1,3,5,6}。

这里我们可以想到这里是用到单链表,很难从后往前去交换,所以我们这里就可以设置两个头结点,其中一个链表用来保存小于x的结点,还有一个保存大于等于x的结点,最后就能将两个链表合并在一起。

解决代码

/*
struct ListNode {int val;struct ListNode *next;ListNode(int x) : val(x), next(NULL) {}
};*/
class Partition {
public:ListNode* partition(ListNode* pHead, int x) {ListNode* lessHead,*lessTail;lessHead = lessTail =(ListNode*)malloc(sizeof(ListNode));if(lessHead == NULL){perror("malloc fali1");exit(1);}ListNode* greaterHead,*greaterTail;greaterHead = greaterTail = (ListNode*)malloc(sizeof(ListNode));if(greaterHead == NULL){perror("malloc fali2");exit(1);}//寻找ListNode* pcur = pHead;while(pcur){//小if(pcur->val < x){lessTail->next = pcur;lessTail = lessTail->next;}//大else {greaterTail->next = pcur;greaterTail = greaterTail->next;}pcur = pcur->next;}//合并lessTail->next=greaterHead->next;greaterTail->next = NULL;//防止过度访问ListNode* ret = lessHead->next;    //销毁  free(lessHead);free(greaterHead);return ret;}
};

http://www.lryc.cn/news/590066.html

相关文章:

  • Python练习(4)Python参数传递的20道核心实战练习题(含答案与深度解析)(上)
  • BNN 技术详解:当神经网络只剩下 +1 和 -1
  • 《精华离散制造智能工厂三年规划》81页PPT
  • Git分支管理完全指南:从创建到合并与冲突解决
  • 关于redis各种类型在不同场景下的使用
  • 基于 Python/PHP/Node.js 的淘宝 API 商品数据抓取开发教程
  • django安装、跨域、缓存、令牌、路由、中间件等配置
  • .env文件的配置
  • 搭建云途YTM32B1MD1芯片VSCODE+GCC + Nijia + Cmake+Jlink开发环境
  • python的慈善捐赠平台管理信息系统
  • 将URL地址最后一段中文内容进行URL编码
  • Harmony-Next鸿蒙实战开发项目-仿小米商城App----V2
  • 【18】MFC入门到精通——MFC(VS2019)+ OpenCV 显示图片的3种方法
  • Kotlin集合聚合
  • Maple2025 软件安装教程(Win版)
  • nerdctl - 兼容 Docker 语法 的 containerd 命令行界面
  • Egg.js × NestJS 2025 Nodejs后端框架选型指南
  • 交易日历接口api,股票/板块日,周,月K线行情接口api,情绪周期api,Level2实时数据api
  • java 知识点表格
  • 数据结构:栈(区间问题)
  • 颠覆NLP十年范式!OpenCSG中文数据集助推CMU无分词器模型登顶SOTA
  • Kubernetes使用kubeadm安装详细步骤
  • Java基础:分支/循环/数组
  • Django基础(三)———模板
  • OpenSearch SQL 查询完整指南
  • django在线音乐数据采集-22647
  • 职业发展:把工作“玩”成一场“自我升级”的游戏
  • OpenCV直线段检测算法类cv::line_descriptor::LSDDetector
  • WPF 导入自定义字体并实现按钮悬停高亮效果
  • 红黑树、B树、B+树