找回密码
 立即注册

QQ登录

只需一步,快速开始

shao910604

初级会员

19

主题

45

帖子

272

积分

初级会员

积分
272
shao910604
初级会员   /  发表于:2024-10-29 18:18  /   查看:354  /  回复:12
10金币
大佬们,如下图所示,一个表格里添加了人员、时间字段,提交时怎么判断同一人员下的时间段是否重叠,后三条是同一人员



大佬们有什么思路,帮帮忙!!!!
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

12 个回复

倒序浏览
最佳答案
最佳答案
赛龙周
银牌会员   /  发表于:2024-10-29 18:18:42
来自 10#
Nathan.guo 发表于 2024-11-1 16:29
期待赛隆周大佬的demo,有金币相赠哦~~

demo来了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +166 收起 理由
Nathan.guo + 166 赞一个!

查看全部评分

回复 使用道具 举报
赛龙周
银牌会员   /  发表于:2024-10-29 21:45:49
2#
把同一人的开始,结束时间依次放到一个数组中,对这个数组升序排序后,两数组想减,结果为0则不重叠

评分

参与人数 1金币 +5 收起 理由
Nathan.guo + 5 赞一个!

查看全部评分

回复 使用道具 举报
shao910604
初级会员   /  发表于:2024-10-30 09:50:06
3#
赛龙周 发表于 2024-10-29 21:45
把同一人的开始,结束时间依次放到一个数组中,对这个数组升序排序后,两数组想减,结果为0则不重叠

大佬,有点不是太理解,把同一人的结束时间放到一个数组,然后两个数组相减,是和原数组相减吗?那原数组结束时间和排序后的数组不是一样的吗,这样结果是不是一直是0
回复 使用道具 举报
Nathan.guo活字格认证 Wyn认证
超级版主   /  发表于:2024-10-30 09:54:25
4#
感谢楼上大佬的支持,我这边提供另外一个思路:
1.使用表格到json命令,将表格数据转换为json
2.使用json反序列化命令,将第一步得到的json数据转换为数组

3.使用循环命令,来循环数组
4.循环命令中,使用数组查询命令,查询有没有某条数据的开始时间小于当前数据的开始时间,并且结束时间大于当前数据开始时间的

5.判断查询结果有没有数据,有的话就说明当前正在循环的这条数据又重复~~



当然,这个算法时间复杂度为O(n2),如果大佬自己对算法也有研究的话,也可以思考下如何实现O(n)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
赛龙周
银牌会员   /  发表于:2024-10-30 11:21:38
5#
本帖最后由 赛龙周 于 2024-10-30 16:50 编辑
shao910604 发表于 2024-10-30 09:50
大佬,有点不是太理解,把同一人的结束时间放到一个数组,然后两个数组相减,是和原数组相减吗?那原数组 ...

其实就是把下次开始的时间与上次结束的时间比较,如果直接这样计算会麻烦,所以把所有的是把开始时间、 结束时间都放到数组中,得到初始数组,再把初始数组排序后得到新数组,比较两个数组是否相等,相等就没有重叠,否则就是重叠的。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Nathan.guo活字格认证 Wyn认证
超级版主   /  发表于:2024-10-30 17:18:02
6#
回复 使用道具 举报
shao910604
初级会员   /  发表于:2024-10-31 10:02:47
7#
Nathan.guo 发表于 2024-10-30 09:54
感谢楼上大佬的支持,我这边提供另外一个思路:
1.使用表格到json命令,将表格数据转换为json
2.使用json ...

感谢大佬提供的思路
回复 使用道具 举报
shao910604
初级会员   /  发表于:2024-10-31 10:06:08
8#
赛龙周 发表于 2024-10-30 11:21
其实就是把下次开始的时间与上次结束的时间比较,如果直接这样计算会麻烦,所以把所有的是把开始时间、  ...

感谢大佬,就是这种效果,能否传个demo看看具体实现
回复 使用道具 举报
Nathan.guo活字格认证 Wyn认证
超级版主   /  发表于:2024-11-1 16:29:20
9#
期待赛隆周大佬的demo,有金币相赠哦~~
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部