【LeetCode】一年中的第几天 Java 题解
题目描述
给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。请你计算并返回该日期是当年的第几天。
通常情况下,我们认为 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此类推。每个月的天数与现行公元纪年法(格里高利历)一致。
复制代码
思路分析
今天的算法每日一题是字符串处理题目,比较简单。我们首先应用到了 split 函数切分年月日。然后枚举每个月的天数,需要特殊处理的是,闰年的 2 月有 29 天。最后累加求和即为答案。实现代码如下:
通过代码
复制代码
总结
上述算法的时间复杂度是 O(n),空间复杂度是 O(1)
坚持算法每日一题,加油!
版权声明: 本文为 InfoQ 作者【HQ数字卡】的原创文章。
原文链接:【http://xie.infoq.cn/article/22f2e539e27e0c472d38ecd22】。文章转载请联系作者。
评论