算法 - 前端笔记-人生如同一面镜子,假如你对它微笑,它也回报你微笑,我的人生信条还是不断的改变现状,求真务实,明天更美好,人生重要的问题,不在于人拥有什么,而在于怎样使用它,人与人关系上最宝贵的是真诚,善于理解便是快乐人生。

学习笔记

点滴记忆
回忆过往

算法

这家伙很懒,还没填写该栏目的介绍呢~

算法

算法:js在既定时间做作业的学生人数

1450. 在既定时间做作业的学生人数 给你两个整数数组 startTime(开始时间)和 endTime(结束时间),并指定一个整数 queryTime 作为查询时间。 已知,第 i 名学生在 startTime[i] 时开始写作业并于 endTime[i] 时完成作业。 请返回在查询时间 queryTime 时正在做作业的学生人数。形式上,返......

阅读(639)评论(0)

算法

算法:js寻找重复项

题目:给定一个包含 n + 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数。 假设 nums 只有 一个重复的整数 ,返回 这个重复的数 。 你设计的解决方案必须 不修改 数组 nums 且只用常量级 O(1) 的额外空间 解题思路:使用对象的key特性,key不能重复......

阅读(650)评论(0)

算法

算法:两数之和

两数之和,力扣  第一题 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。 数组nums: nums = [2,7,11,15] target 值是 : target = 9 解题思路:利用obj特性, 总合 = 目标值......

阅读(638)评论(0)

算法

算法:js翻转数组

js翻转数组     reverse()方法翻转     反向添加数组     数组首尾交换     unshift()向数组头部添加 考点:在 数组首尾交换,reverse()方法肯定不......

阅读(578)评论(0)

算法

算法:数组排序

数组排序总结了5种 冒泡排序:相邻的元素比对,双重循环 选择排序:每次循环找出一个最小值,双重循环 插入排序:设定j左边已经排序好了,右边是未排序的,“每次都排序一下j的左边” sort排序: js提供的函数,没啥说的 【a-b升序/b-a 倒叙】 快速排序:递归,将每个......

阅读(599)评论(0)

算法

算法:js数组去重

数组去重 无非基于以下几种特性  双重循环(sort()排序,splice)     【都是利用循环遍历实现】  includes方法 或  indexOf方法 【利用包含和不包含条件】  obj特性,set,map 都是obj的变种 ......

阅读(462)评论(0)

算法

算法:数组扁平化

数组扁平化的几种方式(总结出就三种方式) 递归 es6的flat函数 字符串 var arr = [1,2,[3,4,5,[6,7,8],9],10,[11,12]]; 1. 递归模式(递归里面需要用到concat链接数组,而不是push添加元素【使用push无法平铺】) ......

阅读(505)评论(0)

算法

算法:tree转数组

tree转数组,两种方式 1. 递归 2. 循环(注意,循环不能使用迭代器方法,只能使用for循环) js版本 初始化数据 /** * 数组 */ let arr = [{name: "李四", id: 2, pid: 0},// [] {name: "王五", id: 3, pid: 0}, // [] {name: "赵六", ......

阅读(426)评论(0)

算法

算法:数组转tree

数组转 tree目前发现就三种方式,js版本实现了三种,go实现了两种 1. 递归模式 2. 双重循环 3. map特性模式(这种模式我在go种实验了几次都没成功,有大佬成功告知一下) js版本 定义数组 let arr = [{name: "李四", id: 2, pid: 0},// [] ......

阅读(426)评论(0)