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

网站服务器到期为什么要网站备案石家庄seo结算

网站服务器到期为什么要网站备案,石家庄seo结算,服务佳的小企业网站建设,微信网站开发147. 对链表进行插入排序 给定单个链表的头 head ,使用 插入排序 对链表进行排序,并返回 排序后链表的头 。 插入排序 算法的步骤: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中&…

147. 对链表进行插入排序

给定单个链表的头 head ,使用 插入排序 对链表进行排序,并返回 排序后链表的头 。

插入排序 算法的步骤:

  1. 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。
  2. 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。
  3. 重复直到所有输入数据插入完为止。

下面是插入排序算法的一个图形示例。部分排序的列表(黑色)最初只包含列表中的第一个元素。每次迭代时,从输入数据中删除一个元素(红色),并就地插入已排序的列表中。

对链表进行插入排序。

示例 1:

输入: head = [4,2,1,3]
输出: [1,2,3,4]

示例 2:

输入: head = [-1,5,3,4,0]
输出: [-1,0,3,4,5]

提示:

  • 列表中的节点数在 [1, 5000]范围内
  • -5000 <= Node.val <= 5000

思路:遍历链表,每次拿下一个节点,新拿下的节点跟之前拿下的节点进行比较,再进行链表的插入。

代码实现:

struct ListNode* insertionSortList(struct ListNode* head) {if(head == NULL || head->next == NULL){return head;}struct ListNode* Cur = head->next;struct ListNode* new_head = head;new_head->next = NULL;while (Cur){   struct ListNode* new_Cur = new_head;struct ListNode* Next = Cur->next;if(Cur->val < new_Cur->val){Cur->next = new_Cur;new_head = Cur;}else{struct ListNode* prev = new_Cur;new_Cur =new_Cur->next;while (new_Cur && Cur->val >= new_Cur->val){prev = new_Cur;new_Cur =new_Cur->next;}prev->next = Cur; Cur->next = new_Cur;}Cur = Next;}return new_head;
}

这里同样我们可以使用到哑指针进行优化!

struct ListNode* insertionSortList(struct ListNode* head) {if (head == NULL || head->next == NULL)return head;struct ListNode dummy;dummy.next = NULL;  // dummy 作为新排序链表头部struct ListNode* cur = head;while (cur) {struct ListNode* next = cur->next;// 在 dummy 链中找插入位置struct ListNode* prev = &dummy;while (prev->next && prev->next->val < cur->val) {prev = prev->next;}// 插入 cur 节点到 prev->next 前面cur->next = prev->next;prev->next = cur;cur = next; // 处理下一节点}return dummy.next;
}

这里对链表的插入需要注意前后节点的指向,需要改变前后节点所指向的位置!

本期就到这结束了,谢谢大家的点赞收藏!!!

http://www.dtcms.com/wzjs/522560.html

相关文章:

  • 深圳哪家做网站比较好互联网域名注册查询
  • 现在流行什么做网站优秀的营销策划案例
  • 做网站的windowlcd互联网平台公司有哪些
  • 视频播放网站开发视频推广一条多少钱
  • 高端的深圳网站页面设计seo岗位
  • 深圳网站定制深圳网站建设公司网络营销的目的和意义
  • 滕州网站建设助企网络蚂蚁bt
  • WordPress明月浩空夫唯seo教程
  • 会计公司网站模板网页制作网站
  • 免费的ftp网站网络推广的渠道
  • 圆通快递归邮政局管吗上海网络公司seo
  • 微信小程序+网站开发武汉seo工厂
  • 做旅行义工网站蚁北京seo不到首页不扣费
  • 餐饮网站建设需求分析网页设计制作网站代码
  • 成都都江堰网站建设指数是指什么
  • 通州网站建设是什么怎么做外链
  • 北京网站制作案例企业营销策划案例
  • 西安网站移动排名提升软件
  • 网站开发商业机密免费优化网站
  • 柳北网站制作广西seo
  • 做it人经常逛的网站网站优化排名软件网站
  • 响应式网站编码怎吗设置济南网站设计
  • 怎么在qq上自己做网站关键词优化的软件
  • 两学一做晋中市网站竞价推广托管开户
  • 哪些网站会盗取网站免费网站免费
  • 民宿客栈网站制作低价刷赞网站推广
  • vb2010做网站兰州seo
  • 在线药店网站建设怎么在百度推广
  • 临沂网站建设培训学校企业qq手机版
  • 建设b2b网站需要多少钱?如何推广seo