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

网站建设报价表自己小程序制作流程

网站建设报价表,自己小程序制作流程,wordpress不能搜索文章,常州建设工程监理员挂证网站02.04、[中等] 分割链表 1、题目描述 给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你不需要 保留 每个分区中各节点的初始相对位置。 2、解题思路 本题要求将链表分隔…

02.04、[中等] 分割链表

1、题目描述

给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。

你不需要 保留 每个分区中各节点的初始相对位置。

2、解题思路

本题要求将链表分隔,使得所有小于 x 的节点排在大于或等于 x 的节点之前。链表中的节点顺序不需要保持。我们的目标是创建两个链表,一个存储小于 x 的节点,另一个存储大于等于 x 的节点,最后将两个链表拼接起来。

  1. 创建两个链表:
    • 一个用于存放小于 x 的节点 (less)。
    • 一个用于存放大于等于 x 的节点 (greater)。
  2. 遍历原链表:
    • 对于每个节点,判断其值与 x 的大小:
      • 如果节点值小于 x,将其添加到 less 链表。
      • 如果节点值大于等于 x,将其添加到 greater 链表。
  3. 拼接两个链表:
    • 遍历完原链表后,将 less 链表的最后一个节点指向 greater 链表的头节点。
    • greater 链表的最后一个节点需要指向 null,表示链表的结束。
  4. 返回结果:
    • 返回 less 链表的头节点(即跳过辅助节点)。

3、代码实现与详细注释

class Solution {
public:ListNode* partition(ListNode* head, int x) {// 创建两个虚拟节点作为新链表的头,一个用于小于x的节点,另一个用于大于等于x的节点ListNode* less = new ListNode(0);   // 用于存放小于x的节点ListNode* greater = new ListNode(0); // 用于存放大于等于x的节点// 初始化当前遍历的指针,以及两个链表的末尾指针ListNode *cur = head, *cur1 = less, *cur2 = greater;// 遍历整个链表while (cur) {if (cur->val < x) {// 当前节点值小于x,将该节点加入到less链表cur1->next = cur;cur1 = cur1->next;  // 移动less链表末尾指针} else {// 当前节点值大于等于x,将该节点加入到greater链表cur2->next = cur;cur2 = cur2->next;  // 移动greater链表末尾指针}// 移动到链表的下一个节点cur = cur->next;}// 将less链表与greater链表连接起来cur1->next = greater->next;// 将greater链表的最后一个节点指向null,避免成环cur2->next = nullptr;// 返回less链表的头节点,跳过第一个虚拟节点return less->next;}
};

4、关键点总结

  1. 虚拟节点:
    • 使用 ListNode() 创建虚拟头节点,避免处理头节点的特殊情况,简化代码逻辑。
  2. 链表拼接:
    • 遍历原链表的过程中,将节点分别加入到 lessgreater 链表。遍历完后,将 less 链表与 greater 链表拼接在一起。
  3. 尾节点处理:
    • 注意在拼接链表后,greater 链表的最后一个节点需要指向 nullptr,防止链表成环。

5、时间复杂度与空间复杂度

  • 时间复杂度: O(n),其中 n 是链表的长度。我们只遍历了链表一次。
  • 空间复杂度: O(1),因为我们只是创建了两个辅助链表指针,额外空间与输入大小无关。
http://www.yayakq.cn/news/349753/

相关文章:

  • 个人无网站怎样做cps广告互联网代理商联盟平台
  • 佛山市建设行政主管部门网站网站 子域名
  • 网站不显示内容淮南淮北
  • 网站建设制作首页流程黄骅港站
  • 创建设计公司网站纯html5网站源码
  • 网站的网站建设公司区块链开发前景
  • 提供手机网站制作网站通栏图片代码
  • 河北建网站wordpress首页调用文章
  • app大全免费seo网站设计营销工具
  • 小语种外贸建站网站界面设计需要
  • 泗塘新村街道网站建设成都网站关键词推广优化
  • 企业官方网站的作用成都网站建设私单
  • 阳江网站seo服务怎么建设课程的网站
  • wap网站解析网站建站需要什么
  • 网站建设与管理 试卷采集网站如何收录
  • 飞鱼网站建设网站设计的技术选择
  • 常州网站建设招聘产品设计网上接单
  • 鞍山建设局的网站四川建站模板网站公司
  • 网站建设如何避免陷入模仿误区银川网站建设实习生
  • 佛山网站优化流程攻击网站的方法
  • 学做美食网站做网站客户最关心哪些问题
  • 搭建网站的五大步骤怎样做好邯郸网站建设
  • 网站栏目推介怎么做三明做网站的公司
  • 动易网站内容管理系统网站标题 没有排名
  • 帮您做网站wordpress justnews
  • 网站建设公司 岗位电脑中怎样安装wordpress
  • wordpress整站无法打开网上制作公章
  • 四平建设局网站腾讯网站建设
  • 网站建设常规自适应佛山智能网站建设地址设计
  • 深圳专业专业网站设计公司网站制作多少钱400