- 博客(5)
- 收藏
- 关注
原创 JavaScript03 --- 迭代器与生成器
迭代器迭代:按照顺序反复多次执行一段程序,通常会有明确的终止条件。计数循环是最简单的迭代:function test() { for(let i = 0; i < 5; ++i){ console.log(i); }}test();最常见的迭代就是数组,因为数组有已知的长度,且数组每一项都可以通过索引获取,所以整个数组可以通过递增索引来遍历。function test() { let arr = [1, 2, 3]; for(let i = 0
2022-02-25 11:50:58 446
原创 JavaScript02 --- 引用数据类型
Date利用new操作符调用Date构造函数来创建日期对象let now = new Date();在不给Date构造函数传参数的情况下,创建的对象将保存当前日期和时间。要基于其他日期和时间创建日期对象,必须传入其毫秒表示。Date.parse()方法接收一个表示日期的字符串参数,尝试将这个字符串转换为表示该日期的毫秒数。Date.UTC()方法也返回日期的毫秒表示。传给Date.UTC()的参数是年,零起点月数(1月是0,2月是1…),日,时,分,秒,毫秒。这些参数中,只有前两个是必须的额。如
2022-02-24 22:08:55 312
原创 JavaScript01 --- 变量与数据类型
变量声明变量的三个关键字:var、let、constvar关键字:例如: var messgae = “abc”;这行代码定义了一个名为message的变量。可以用它保存任何类型的值。不初始化的情况下,变量会保存一个特殊值undefined。function test() { var message; console.log(message);}test();初始化变量之后,并不会将其标识为字符串,只是简单的赋值。在之后的操作中,既可以改变值,也可以改变值的类型(但不推荐)。v
2022-02-23 23:59:02 138
原创 P1198-最大数
P1198-最大数看到题解里面有好多都是用线段树做的,感觉有点大材小用了。那么问题来了,这道题可以用什么简单的数据结构来解决呢?我的答案是单调栈。单调栈这个算法就不再多说了,主要说一下做法吧:首先定义两个数组,一个数组 a 用来存储序列中的值,另一个数组 st 作为单调栈用来存储数字的下标。如果当前操作为“A”,则先将当前数字加入到 a 数组中,并操作 st 数组维护单调栈。如果当前操作为“Q”,则利用二分查找在 st 中找到第一个大于等于 n 的值,并更新 t 的值。核心代码如下:cin >
2021-09-30 09:10:28 92
原创 P2251 - 质量检测
P2251 - 质量检测题目大意原题链接为了检测生产流水线上总共 N 件产品的质量,我们首先给每一件产品打一个分数 A 表示其品质,然后统计前 M 件产品中质量最差的产品的分值 Q[m] = min{A_1, A_2, … A_m}Q[m]=min{A1,A2,…Am},以及第 2 至第 M + 1件的 Q[m + 1], Q[m + 2]… 最后统计第 N - M + 1 至第 N 件的 Q[n]。根据 Q 再做进一步评估。请你尽快求出 Q 序列。solution 1:滑动窗口/单调队列/
2021-08-23 18:49:56 205
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人