算法
专注JS高频算法
前端Jerry
这个作者很懒,什么都没留下…
展开
-
求字符串中出现次数最多的字符及次数
【代码】求字符串中出现次数最多的字符及次数。原创 2023-06-28 10:47:38 · 272 阅读 · 0 评论 -
将对象转换为JSON字符串,即手写JSON.stringify
这个stringify不是很完善的一个方法,和原生JSON.stringify还是有一定的差距,JSON.stringify是可以接受两个参数的,我这边暂不支持,后续再加吧。原创 2023-06-27 11:07:33 · 405 阅读 · 0 评论 -
js整数翻转
【代码】js整数翻转。原创 2023-06-26 18:25:04 · 200 阅读 · 0 评论 -
判断两个完全相等的JSON字符串
上面的两个f是不相等的,因为参数的顺序不一致,且console后面一个有分号,一个没有分号。因为判断两个function比较复杂,所以上述用了一个简单暴力的方式。应该判断function的name、length,以及方法主体内的代码去除空格、注释、符号等,然后再进行判断。原创 2023-06-26 12:04:23 · 657 阅读 · 0 评论 -
js输出一个字符串全队列
【代码】js输出一个字符串全队列。原创 2023-06-26 10:38:42 · 68 阅读 · 0 评论 -
算法:回文数
所谓回文数,也就是给定一个数字,从左往右,还是从右往左,都是一个数,如:121、1221等。● 通过循环,或者转为数组进行反转,然后与原始值是否相等。原创 2023-06-25 18:00:24 · 22 阅读 · 0 评论 -
从10亿个数据找出最大的N个
至于findMax方法,在另外一篇文章【从10万个数中找10个最大的数】已讲述,这里不再进行额外讲述。原创 2023-05-26 16:52:08 · 53 阅读 · 0 评论 -
从10万个数中找10个最大的数
【代码】从10万个数中找10个最大的数。原创 2023-05-16 07:45:23 · 273 阅读 · 0 评论 -
JS求无重复字符的最长字符
b. 定义四个变量,最大长度a1及对应的数组a2,临时最大长度b1及对应的数组b2,循环字符串,判断每个循环体c是否在临时最长数组b2内,在的话就b1+1,同时将c追加到b2内,否则将b1置为1,b2清空,然后追加c。再将a1和a2取最大值,b1和b2取最大值,即得到了最大长度与之对应的数组。a. 基本操作,判断参数类型以及长度。原创 2023-04-22 22:45:33 · 132 阅读 · 0 评论 -
求字符串中连续字符出现最长的字符串及长度
c. 求最大值对应的字符,定义两个变量,一个是临时变量a,每次循环判断是否连续,连续a则进行拼接,否则就a置为当前循环的字符;再定一个临时最大长度字符变量b,每次循环结束之后,将刚才的临时变量a和这个临时最大值b变量取最长长度c,最大长度c即是要求的最大长度对应的字符。b. 求最大值,定义两个变量,一个是临时变量a,每次循环判断是否连续,连续a则+1,否则就a置为1;再定一个临时最大值变量b,每次循环结束之后,将刚才的临时变量a和这个临时最大值b变量取最大值c,最大值c即是要求的最大长度。原创 2023-04-20 10:37:46 · 877 阅读 · 0 评论 -
JS如何计算两数之和
使用map(当然对象也可,但是性能相比map稍差些),循环nums,将当前循环下标a作为value,将目标值target减去当前循环项得到的值b作为key,储存到map中。问题在于对于b的理解,b其实就是我们要在nums中寻找的值,因为这个差值b加上刚才的循环项c即等于我们的目标值target,一旦找到这个差值,也就是我们要找的这个差值b所在的下标,另外就是当前循环项d。时间复杂度:O(n),空间复杂度:O(n)当然,如果嵌套两层循环也是可以实现这个需求的,但是时间复杂度:O(n²),空间复杂度:O(n)原创 2023-04-20 09:24:22 · 516 阅读 · 0 评论