
算法
文章平均质量分 50
渊来有你
这个作者很懒,什么都没留下…
展开
-
js封装实现输入日期,得到其中包含所有季度和对应季度年月
封装第一个函数:功能,传入月份,输出季度第二个函数:功能:传入两个参数一个开始时间,一个增加时间,返回增加时间过后的结束日期第三个函数:功能 计算日期之间的月数,返回相差几个月最终代码实现:结果如下:............原创 2022-06-24 13:34:20 · 1562 阅读 · 0 评论 -
优惠卷到期时间设置:输入一个日期,计算这个日期加上若干天后是什么日期?
题目范例:输入 2008 2 3 ,然后输入需要添加的天数 100 ,输出 2008 5 13思路:将日期参数放到一个数组当中,然后利用得到的添加天数100,进行循环遍历,一天一天的加,每循环一次,添加天数 -1 ,直到添加天数为0,输出即可。(其中需要判断每个月的天数,是否为闰年,到月底月数+1,到年底年数+1)代码如下:// 利用数组存储日期参数var arr = [2022, 1, 10] //初始日期var addday = 11 //增加天数function MyDate(year,原创 2022-05-14 11:11:02 · 710 阅读 · 0 评论 -
js数据结构与算法(栈-队列-单/双向链表-集合-字典-哈希表-二叉树-红黑树-图-常见排序算法)
栈描述:栈先进后出,相当于数组的倒序输出,栈顶就是最后一个元素,栈尾就是第一个元素栈的封装// 栈类function Stack() { // 栈中的属性 this.items = [] // 栈相关的方法 // 压栈操作 Stack.prototype.push = function (element) { this.items.push(element) } // 出栈操作 Stack.prototype.pop原创 2022-04-08 17:02:38 · 3512 阅读 · 0 评论 -
正则表达式 千分位分隔符(金额每3位添加逗号)
1.金额每3位添加逗号//这里使用两种方式,使用一种删除第二种即可function thousand(num) { // 思想1. 找见第一个数字后面成3倍数的数字,然后把这些匹配的数字转换成 “数字,”的形式,就可以完成千分位表示 // 思想2. 找见数字中间的空位,比如123,找见1和2中间,2和3中间,把符合条件的转换为","即可 return (num+"").replace(/\d(?=(\d{3})+$)/g, "$&,")+" "+ num.toStr原创 2022-03-30 21:59:31 · 4147 阅读 · 0 评论 -
LRU (最近最少使用) 缓存实现的两种方式
题目如下LRU最近最少使用,是一种常用的页面置换算法,在容量一定的情况下,删除内存中最近最久未使用的数据。首先第一种方式:Map利用在Map当中键值的方式进行存储数据,它的特性就是我们新加入set进去的键值对在其内部是有顺序排列的,及我们set一个键值对它就会去放在后面,这时如果我们容量已满,那么只需要删除掉第一个键值即可(因为常使用(把他移到后方)的和新进入的都会在后方添加进去),然后就实现了一个LRU算法具体解释都已在代码详细注释// 第一种方式Map方式// Map中set加入的键值对是原创 2022-03-29 21:23:44 · 1679 阅读 · 0 评论