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

网站设计中的事件是什么对网站开发的理解500字

网站设计中的事件是什么,对网站开发的理解500字,大连网站优化公司,iis 发布网站asp网站目录 题目描述:148. 排序链表(中等)题目接口解题思路代码 PS: 题目描述:148. 排序链表(中等) 给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 LeetCode做题链接&#xff1…

目录

  • 题目描述:148. 排序链表(中等)
    • 题目接口
    • 解题思路
    • 代码
  • PS:

题目描述:148. 排序链表(中等)

给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表

LeetCode做题链接:LeetCode-排序链表

示例 1:
在这里插入图片描述

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

示例 2:
在这里插入图片描述

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

示例 3:

输入:head = []
输出:[]

提示:

链表中节点的数目在范围 [0, 5 * 104] 内
-105 <= Node.val <= 105

进阶: 你可以在 O(nlog n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗?

题目接口

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode sortList(ListNode head) {}
}

解题思路

参考题解:Sort List (归并排序链表)

思路:递归

  • 1.用二分法的方法将列表从中间分割,再把分割的列表继续从中间分割,分割到最小单位(快慢指针)
  • 2.递归终止条件: 当 head.next == None 时,说明只有一个节点了,直接返回此节点
  • 3.再返回两个分割列表的合并列表(合并有序列表)
    可以跟着这个图理解一下~
    在这里插入图片描述

代码

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode sortList(ListNode head) {// 1、递归结束条件if (head == null || head.next == null) {return head;}// 2、找到链表中间节点并断开链表 & 递归下探ListNode midNode = middleNode(head);ListNode rightHead = midNode.next;// 截断列表midNode.next = null;// 递归,不断下探到最深出最低端,再合并返回ListNode left = sortList(head);ListNode right = sortList(rightHead);// 3、当前层业务操作(合并有序链表)return mergeTwoLists(left, right);}//  找到链表中间节点(876. 链表的中间结点)private ListNode middleNode(ListNode head) {if (head == null || head.next == null) {return head;}ListNode slow = head;ListNode fast = head.next.next;while (fast != null && fast.next != null) {slow = slow.next;fast = fast.next.next;}return slow;}// 合并两个有序链表(21. 合并两个有序链表)private ListNode mergeTwoLists(ListNode l1, ListNode l2) {ListNode sentry = new ListNode(-1);ListNode curr = sentry;while(l1 != null && l2 != null) {if(l1.val < l2.val) {curr.next = l1;l1 = l1.next;} else {curr.next = l2;l2 = l2.next;}curr = curr.next;}curr.next = l1 != null ? l1 : l2;return sentry.next;}
}

PS:

感谢您的阅读!如果您觉得本篇文章对您有所帮助,请给予博主一个喔~

http://www.yayakq.cn/news/145332/

相关文章:

  • 做两个网站 之间超链接宁波好品质品牌网站设计哪家好
  • 阿里云用什么系统做网站好wordpress添加一言
  • 建设银行jo 办网站用卡新产品推广方案范文
  • 单页营销网站2345推广联盟
  • 广州专业做外贸网站今天的湖北新闻
  • 全铝家居全屋定制十大名牌江西短视频搜索seo哪家好
  • 门户网站团队建设给个网站你知道
  • 做一个网站要花多少钱织梦手机网站
  • 网站搭建的流程033340网站建设与管理
  • 网站域名跳转怎么做灵犀科技 高端网站建设首页
  • 做网站加推广做护肤品好的网站好
  • 几百的网站万网登录入口
  • 重庆放心seo整站优化网站网页设计师
  • 数据显示网站模板深圳英文网站建设公司
  • 朔州如何做百度的网站个人做的网站可以收款
  • 网站死链接怎么删除wordpress地图在哪
  • 用ps做租房网站里的图标大小网上商城制作哪家好
  • 房地产公司网站制作怎样宣传网站
  • 郑州营销型网站推广简述营销型网站开发流程图
  • 永康建设投标网站电商境外如何做推广
  • 用php做的博客网站ico网站建设
  • 如何夸奖客户网站做的好网站导航样式
  • 梁山网站建设价格济南手工网站建设公司
  • 中山快速做网站服务在线图片编辑器下载
  • 营销型网站的建设起步西安市住房和城乡建设局网站
  • 程序网站开发网站开发面试问题以及回答
  • 网站建设公司合同西安营销推广
  • 南京建站公司免费建站系统
  • 四川南充网站建设音乐网站设计素材
  • 做网站推广托管注意网站建设需要上税吗