2022.6.21 Lintcode 追加练习 2907 一周的休息日 (五)

这篇博客探讨了一道Lintcode上的多线程编程题目,涉及使用ConcurrentHashMap保证线程安全, LocalDate处理日期,AtomicInteger避免线程同步问题。通过并发线程存入日期键值对,强调了在高效率和线程安全之间的平衡。
摘要由CSDN通过智能技术生成

描述

我们的一周 SUN, MON, TUE, WED, THU, FRI, SAT,分别代表 周日,周一,周二,周三,周四,周五,周六。我们会启动多个线程存入键值对 key = 年月日期, value= 周日期 至 Solution 类的静态变量 map(请选择合适的键值对集合,补全 map 的定义代码段),其中 年月日期 包含从 "2021年10月8日" 起往后 7000 天内的所有日期,周日期 是我们上述中的对应周日期。
同时,你需要在 getWeekDay() 方法中返回一个 Thread 线程数组,我们会在 Main 中启动该数组中的所有线程。

键值对集合的加载因子(initialCapacity)为默认值:0.75f,你可以填适当的加载因子优化效率。
多线程是为了更高效率,你可以定义 7 个以外 Thread 线程数组,但要注意运行时间。
为统一本题输出内容,我们在 Main 中使用 TreeMap 进行打印结果,因此打印顺序并非日期顺序,用户返回的 Map 数据齐全即可。

样例

本题目无需任何输入,运行正确的代码后,控制台应返回结果:

 
Time limit 200ms: true
Solution.map.size() 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值