每日一题——LeetCode1154.一年中的第几天

方法一 列举法:

用一个数组把每个月份的天数都列举出来

判断闰年,是闰年2月份有29天

循环对当前月份之前的月份天数求和

加上当天月份的天数

javascript 复制代码
var dayOfYear = function(date) {
    let year = +date.slice(0, 4);
    let month = +date.slice(5, 7);
    let day = +date.slice(8);

    let amount = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    if (year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0)) {
        ++amount[1];
    }

    let ans = 0;
    for (let i = 0; i < month - 1; ++i) {
        ans += amount[i];
    }
    return ans + day;
};

消耗时间和内存情况:

相关推荐
JeffersonZU9 分钟前
【数据结构】1-4算法的空间复杂度
c语言·数据结构·算法
L_cl14 分钟前
【Python 算法零基础 4.排序 ① 选择排序】
数据结构·算法·排序算法
山北雨夜漫步1 小时前
机器学习 Day18 Support Vector Machine ——最优美的机器学习算法
人工智能·算法·机器学习
拼好饭和她皆失1 小时前
算法加训之最短路 上(dijkstra算法)
算法
阿珊和她的猫1 小时前
Vue Router中的路由嵌套:主子路由
前端·javascript·vue.js
霸王蟹2 小时前
React 19中如何向Vue那样自定义状态和方法暴露给父组件。
前端·javascript·学习·react.js·typescript
shenyan~2 小时前
关于 js:9. Node.js 后端相关
前端·javascript·node.js
进取星辰3 小时前
31、魔法生物图鉴——React 19 Web Workers
开发语言·javascript·ecmascript
瓦力wow4 小时前
c语言 写一个五子棋
c语言·c++·算法
X-future4264 小时前
院校机试刷题第六天:1134矩阵翻转、1052学生成绩管理、1409对称矩阵
线性代数·算法·矩阵