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

网站和微信公众号建设360安全浏览器

网站和微信公众号建设,360安全浏览器,网页设计基础课程设计报告,手机制作视频软件app文章目录哨兵位节点哨兵位节点 链表分割 小于X 尾插到一个新链表 大于等于X 尾插到另一个链表 最后将两个链表链接起来 需要注意的细节:将第一个链表的尾与第二个链表的头相连接,再返回连接后的整个链表的头(哨兵位头节点的下一个&#xff0…

文章目录

  • 哨兵位节点

哨兵位节点

链表分割

小于X 尾插到一个新链表
大于等于X 尾插到另一个链表
最后将两个链表链接起来

需要注意的细节:将第一个链表的尾与第二个链表的头相连接,再返回连接后的整个链表的头(哨兵位头节点的下一个)

我们可以把哨兵位的头节点当作真实头节点的前驱,它是一个不在答案范围内的节点,但它却可以有效的控制真实的链表。其里面的值可以是随机的,它的next初始指向NULL,如果有节点尾插,它的next就指向尾插的节点,而尾插的节点就是新连接的链表的真实的头。当最后连接完成时,我们想要返回这个链表,不能直接返回哨兵位的头节点 ,应该直接返回哨兵位的next,因为哨兵位的next才是有效的真实的头节点

使用哨兵位的头节点 可以极大可能的避免判断链表为NULL 的情况

在这里插入图片描述

在这里插入图片描述

class Partition {
public:ListNode* partition(ListNode* pHead, int x){struct ListNode* lesshead = (struct ListNode*)malloc(sizeof(struct ListNode));  //创建哨兵位头节点struct ListNode* greaterhead= (struct ListNode*)malloc(sizeof(struct ListNode));//创建哨兵位头节点 lesshead->next = NULL, greaterhead->next = NULL;struct ListNode* cur = pHead, * lesstail = lesshead, * greatertail = greaterhead;// 遍历原链表while (cur){// 如果小于x就尾插到lessheadif (cur->val < x) {lesstail->next = cur;lesstail=lesstail->next ;cur = cur->next;}else   //如果 >= x 就尾插到greaterhead {greatertail->next =cur ;greatertail=greatertail->next ;cur = cur->next;}}lesstail->next = greaterhead->next;	// 第一个的尾连接第二个的头// 将第二个的尾置为NULLgreatertail->next = NULL;  //防止成环 return lesshead->next; // 返回新链表的头// 分别释放创建的两个哨兵位头节点free(lesshead);free(greaterhead);}
};

需要注意一定要将两个链表链接起来一定要将新链表尾节点置NULL
我们假设 需要分割的链表是 1 5 2 7 3 4 X是 5
小于X 的链表是 1 2 3 4 大于等于X的链表是 5 7
最后将两个链表链接起来
如果此时没有将新链表的尾节点置NULL ,此时 7 的节点还保存了原链表 元素3 的地址就会形成环

如图所示


在这里插入图片描述

如果你觉得这篇文章对你有帮助,不妨动动手指给点赞收藏加转发,给鄃鳕一个大大的关注
你们的每一次支持都将转化为我前进的动力!!!

http://www.hrbkazy.com/news/29360.html

相关文章:

  • 网站建设报价兴田德润在哪里什么软件可以推广
  • 蚌埠网站制作公司哪家好国外seo网站
  • 信用湘潭网站自助建站系统平台
  • 做网站程序的步骤网络seo外包
  • 淘宝开店注册流程河北网站优化公司
  • 魔域网页游戏官网上海专业优化排名工具
  • 自己怎么做外贸英文网站宣传广告怎么做吸引人
  • 网站备案接入商是什么百度云盘登录电脑版
  • 网站建设的重要宁波网站建设方案推广
  • 用网站做平台有哪些链接购买平台
  • 东阿网站建设老客外链
  • 信金在线制作网站百度搜索引擎广告投放
  • 北京市建设投标网站如何让百度快速收录网站文章
  • 西安企业网站建设哪家好35个成功的市场营销策划案例
  • bing收录提交引擎优化是什么意思
  • 小语种网站建设及推广免费下载优化大师
  • 新乡专业网站建设公司今晚日本比分预测
  • 聂教练做0网站2022最火营销方案
  • 新工商名录企业应用平台seo网站优化工具大全
  • 有什么网站可以做设计兼职免费发布信息的网站平台
  • 小精灵儿童网站免费做踢一站式网络推广服务
  • 重庆互动网站建设网站优化 秦皇岛
  • 西安做网站的公司维护网站seo优化课程
  • 网站广告位投放百度贴吧官网入口
  • 为什么要做网站推广wifi优化大师下载
  • 网站内链接怎么做做网络推广一个月的收入
  • 有哪些网络营销公司南昌seo
  • 学做投资网站好企业网站定制开发
  • 做网站一定要用cms吗常州网站推广
  • 做搜狗网站优下载百度app下载