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

什么是小手机型网站网页优化怎么做

什么是小手机型网站,网页优化怎么做,网站维护,南通科技网站建设链表不同与数组,因为有方向,所以和数组排序能用很多方法不同,比较适合的就是归并排序。这里是学习的灵神的方法:在刚开始学习积累的时候,建议在B站先看灵神的解读【反转链表【基础算法精讲 06】-哔哩哔哩】 https://b2…

链表不同与数组,因为有方向,所以和数组排序能用很多方法不同,比较适合的就是归并排序。

这里是学习的灵神的方法:在刚开始学习积累的时候,建议在B站先看灵神的解读【反转链表【基础算法精讲 06】-哔哩哔哩】 https://b23.tv/63r1l12,先不看代码,自己写,然后看题解。

归并排序(分治)

class Solution:# 876. 链表的中间结点(快慢指针)def middleNode(self, head: Optional[ListNode]) -> Optional[ListNode]:slow = fast = headwhile fast and fast.next:pre = slow  # 记录 slow 的前一个节点slow = slow.nextfast = fast.next.nextpre.next = None  # 断开 slow 的前一个节点和 slow 的连接return slow# 21. 合并两个有序链表(双指针)def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]:cur = dummy = ListNode()  # 用哨兵节点简化代码逻辑while list1 and list2:if list1.val < list2.val:cur.next = list1  # 把 list1 加到新链表中list1 = list1.nextelse:  # 注:相等的情况加哪个节点都是可以的cur.next = list2  # 把 list2 加到新链表中list2 = list2.nextcur = cur.nextcur.next = list1 if list1 else list2  # 拼接剩余链表return dummy.nextdef sortList(self, head: Optional[ListNode]) -> Optional[ListNode]:# 如果链表为空或者只有一个节点,无需排序if head is None or head.next is None:return head# 找到中间节点 head2,并断开 head2 与其前一个节点的连接# 比如 head=[4,2,1,3],那么 middleNode 调用结束后 head=[4,2] head2=[1,3]head2 = self.middleNode(head)# 分治head = self.sortList(head)head2 = self.sortList(head2)# 合并return self.mergeTwoLists(head, head2)

整体是一个递归的思想,这个sortList函数首先把一个链表一分为二(采用快慢指针找链表中点,然后断开中点和后面一个节点的连接)。然后对这个被分成两段的链表,要得到它们的排序新链表,也要调用sortList函数,直到递归到只有一个节点或者空节点,就不用排序了。

(1)把链表递归一分为二

(2)递归直到分到最小,返回合并后的,一层层全部合并完,在合并的过程中完成了排序。

时间复杂度:O(nlogn)     空间复杂度:O(logn)[递归的深度]

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

相关文章:

  • 做网站怎么实现鼠标经过图像推广普通话宣传周
  • 自己做网站需要学什么软件下载企业策划书
  • 网站域名的建立比较好的品牌策划公司有哪些
  • 站酷的网址什么是sem推广
  • 杭州网站设计开发网站运营是做什么的
  • 网站登陆页面怎么做学大教育培训机构怎么样
  • 网页设计素材网站大全怎样优化网络
  • 怎样进网站空间服务器百度seo优化价格
  • 网站推广有哪些优势百度一下首页百度
  • 推广网站实例免费网站制作平台
  • wordpress不同页面布局南京搜索引擎推广优化
  • 十堰商城网站建设上海seo推广方法
  • 网站建设 东道网络如何推广自己的店铺?
  • 电脑网速很慢但是wifi又很正常优化营商环境心得体会1000字
  • 黑群晖做网站营销型企业网站有哪些平台
  • 德州建设局网站在线看crm系统
  • 珠海专业网站制作站长工具seo优化
  • 新疆政务网站建设北京网络seo经理
  • 快捷的网站建设排行榜阿里妈妈推广网站
  • 上海网站建设定制公司steam交易链接怎么获取
  • 用dreamware做网站河北百度竞价优化
  • 延安怎么做网络推广seo综合检测
  • 博物馆网站建设方案网上企业推广
  • 如何找到一家靠谱的网站建设公司google搜索关键词热度
  • dw网站log怎么做sem推广计划
  • qq网站登录百度指数数据官网
  • 沈阳网站建设 房小二企业网络推广软件
  • 公司用员工信息做网站域名备案南京网站快速排名提升
  • dw做网站的搜索栏怎么做网络营销培训机构
  • 企业网站建设管理系统百度seo关键词排名 s