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

企业网站建设 会计分录如何创建一个个人网站

企业网站建设 会计分录,如何创建一个个人网站,江苏城市建设职业学院网站,如何做一家类似携程的网站文章目录 摘要描述题解答案题解代码分析示例测试及结果时间复杂度空间复杂度总结 摘要 在这篇文章中,我们将深入探讨LeetCode第252题“会议室”的问题,提供一个用Swift编写的解决方案,并结合实际场景进行分析。通过这篇文章,你将…

在这里插入图片描述
在这里插入图片描述

文章目录

    • 摘要
    • 描述
    • 题解答案
    • 题解代码分析
    • 示例测试及结果
    • 时间复杂度
    • 空间复杂度
    • 总结

摘要

在这篇文章中,我们将深入探讨LeetCode第252题“会议室”的问题,提供一个用Swift编写的解决方案,并结合实际场景进行分析。通过这篇文章,你将了解如何判断一个人是否可以参加所有会议,以及相关的时间和空间复杂度分析。

描述

问题描述:给定一个包含多个会议时间间隔的数组,每个间隔由开始时间和结束时间组成,判断一个人是否可以参加所有的会议。

示例1

输入:[[0,30],[5,10],[15,20]]
输出:false

示例2

输入:[[7,10],[2,4]]
输出:true

题解答案

要判断一个人是否可以参加所有会议,关键在于检查会议时间是否有重叠。具体步骤如下:

  1. 排序:首先,根据会议的开始时间对所有会议进行排序。
  2. 检查重叠:然后,遍历排序后的会议,检查当前会议的开始时间是否早于前一个会议的结束时间。如果是,则说明有重叠,返回false

题解代码分析

以下是用Swift实现的解决方案:

func canAttendMeetings(_ intervals: [[Int]]) -> Bool {guard intervals.count > 1 else {return true}let sortedIntervals = intervals.sorted { $0[0] < $1[0] }for i in 1..<sortedIntervals.count {if sortedIntervals[i][0] < sortedIntervals[i - 1][1] {return false}}return true
}

代码分析

  • 边界检查:如果会议数量少于2个,直接返回true,因为一个会议或没有会议都不存在时间冲突的问题。
  • 排序:使用sorted方法根据每个会议的开始时间对数组进行排序。
  • 遍历检查:从第二个会议开始,检查当前会议的开始时间是否小于前一个会议的结束时间。如果是,说明时间有重叠,返回false

示例测试及结果

让我们通过几个测试用例来验证上述函数的正确性:

let meetings1 = [[0,30],[5,10],[15,20]]
print(canAttendMeetings(meetings1)) // 输出:falselet meetings2 = [[7,10],[2,4]]
print(canAttendMeetings(meetings2)) // 输出:truelet meetings3 = [[1,5],[5,10],[10,15]]
print(canAttendMeetings(meetings3)) // 输出:true

结果分析

  • 测试用例1:第一个会议和第二个会议时间重叠,因此返回false
  • 测试用例2:所有会议时间无重叠,因此返回true
  • 测试用例3:会议时间首尾相接,但不重叠,因此返回true

时间复杂度

  • 排序:对会议数组进行排序的时间复杂度为O(n log n),其中n是会议的数量。
  • 遍历检查:遍历排序后的数组进行检查的时间复杂度为O(n)。

因此,总的时间复杂度为O(n log n)。

空间复杂度

如果排序是就地进行的,空间复杂度为O(1)。否则,排序可能需要O(n)的额外空间。

总结

通过对会议时间进行排序并检查相邻会议时间是否重叠,我们可以高效地判断一个人是否可以参加所有会议。这种方法在处理日程安排冲突等实际场景中非常实用。

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

相关文章:

  • 万网网站制作自媒体运营
  • 网站网页建设实训心得体会电商网站有哪些
  • 佛山网站专业制作网页设计免费模板
  • 网站怎么做图片滚动今日热点新闻事件摘抄
  • 做电商网站的公司seo排名的公司
  • 专业的教育行业网站制作时事热点新闻
  • 全国网站制作前十名宁波seo推广平台
  • 做柜子网站网站内部seo
  • 有关做美食的网站乐a5站长网
  • 阜新市建设学校官方网站肇庆疫情最新消息
  • 西安网站建设网站重庆seo技术分享
  • 蚌埠企业做网站企业培训课程价格
  • 网站里添加聊天框怎么做百度官网认证多少钱
  • 网站建设 系统维护怎么样推广自己的公司
  • 企业做网站 乐云seo电脑培训班一般要学多久
  • 专业的学校网站建设网络营销的宏观环境
  • 祺越网站建设网站生成
  • 怎么看公司是不是外包网站排名优化制作
  • 做cpa网站谷歌浏览器引擎入口
  • 福州微信网站制作百度搜索的优势
  • wordpress安装主题失败西安分类信息seo公司
  • 雄安网站制作多少钱哪里的网络推广培训好
  • 合肥做网站的软件公司百度推广天津总代理
  • 个人网站备案不能盈利谷歌浏览器下载手机版安卓官网
  • 广州网站设计制作报价员工培训课程
  • 厦门做企业网站比较好的公司2022最新国内新闻50条简短
  • 千野网站建设买卖平台
  • 网站建设考核表周口seo公司
  • 成人大专学历怎么自考枫林seo工具
  • ecs 网站设计网站如何优化推广