![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 58
qq_42750608
前端
展开
-
192.168.100.0被划分为8个网段后子网掩码写多少?
192.168.100.0被划分为8个网段后子网掩码写多少?原创 2024-04-28 22:27:27 · 420 阅读 · 0 评论 -
摔杯算法(要求用最少的测试次数找出恰巧会使杯子破碎的楼层。)
摔杯算法(要求用最少的测试次数找出恰巧会使杯子破碎的楼层。)原创 2023-11-10 22:40:36 · 422 阅读 · 0 评论 -
将网址转化为map或对象,方便取值
将网址转化为map或对象,方便取值原创 2023-10-28 18:55:47 · 151 阅读 · 0 评论 -
前端对普通数字数组排序示例
前端对普通数字数组排序示例原创 2023-10-24 21:30:00 · 356 阅读 · 0 评论 -
JavaScript--reduce的简单使用
JavaScript--reduce的简单使用原创 2020-09-15 23:55:09 · 121 阅读 · 0 评论 -
JavaScript位运算的妙用
JavaScript位运算的妙用原创 2023-09-27 14:26:21 · 206 阅读 · 0 评论 -
JSON.stringify格式化数据美化显示效果(不呆板地一行显示)
JSON.stringify格式化数据美化显示效果原创 2023-09-26 18:52:16 · 2313 阅读 · 0 评论 -
前端判断: []+[], []+{}, {}+[], {}+{}
而{} + {}相当于{};+ {},相当于只需要看+{}, {}的原始值是'[object Object]',隐式转换'[object Object]'为数字,'[object Object]'无法转换为正常数字,所以变成NaN。({} + []) 相当于是'[object Object]' + '', 得到的是'[object Object]'({} + {})是'[object Object][object Object]'所以[] + [] 就相当于 ''+'', 得到的是空字符串''原创 2023-09-25 21:22:12 · 514 阅读 · 0 评论 -
使用JavaScript将数字格式化成千分位的n种方法
使用JavaScript将数字格式化成千分位的n种方法原创 2023-09-25 20:25:01 · 2783 阅读 · 0 评论 -
JavaScript--对象数组的排序问题--降序
// 降序排序const sort = (arr) => arr.map(ee=> ( Object.keys(ee).sort( (a,b) => charCodeAt(b)-charCodeAt(a) ) .map(v => ({[v]:ee[v]}))))// 将字母转为ascii码的方法:const charCodeAt = str => str.charCodeAt();//将ascii码转为对应字母的方法:const from..原创 2021-04-08 10:05:41 · 284 阅读 · 0 评论 -
JavaScript--数组比较,返回两个数组之间的差异,数组 a 上过滤出数组 b 中不包含的值
const difference = (a, b) => { a = a.map(ee => JSON.stringify(ee)) b = b.map(ee => JSON.stringify(ee)) const arr = a.filter(x => !b.includes(x)); return arr.map(ee => JSON.parse(ee))};// 或者const difference = (a, b) => { a = .原创 2021-03-31 16:53:08 · 685 阅读 · 0 评论 -
JavaScript--运算确保精度--自定义toFixed方法,乘除法计算方法优化
首先是toFixed方法,原本的方法有一些误差,小数点部分不是真正的四舍五入重写一下:const toFixed = function (myNum,s) { // Math.pow(10, s) =>10的s次方 // Math.round=>整数后面的第一个小数数字四舍五入=>例如0.0055501*10^2=>0.5xxx=>1 // 1/100=>0.01 myNum = (Math.round(myNum * Math.pow(10,原创 2020-09-16 22:08:57 · 482 阅读 · 0 评论 -
约瑟夫环 javascript简单实现方法
约瑟夫环:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为1的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去例:N个人围城一桌(首位相连),约定从1报数,报到数为num的人出局,然后下一位又从1开始报,以此类推。最后留下的人获胜。//约瑟夫环,从3开始报数li = ['李一','李二','李三','李四','...原创 2018-11-15 15:30:17 · 1094 阅读 · 0 评论 -
js利用递归计算斐波那契数列结果
function fb(n){ if (n == 1 || n==2) { return 1 } return fb(n-1)+fb(n-2) }console.log(fb(9))//34斐波那契数列数列从第3项开始,每一项都等于前两项之和。例子:数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 1...原创 2018-11-14 16:17:24 · 2691 阅读 · 2 评论 -
JavaScript--种花问题
// 种花问题: 目前限制只考虑空地至少两处的情况(因为有0和1)// 思路: 1.定义一个可以种的最大数字==>变量max// 2.第一个是0,第二个是0,可以种花=>max+1;// 3.左边(i-1)是0,右边(i+1)是0,中间就可以是1=>max+1function getResult(arr, n) { let max = 0; // 可以种植的花的数量===>相当于一个计数器 // 之所以是length-1,因为是要判断arr[i+1]的值,若不...原创 2020-09-16 03:34:09 · 155 阅读 · 0 评论 -
js去重的几种方法
1. arr.includes(item) => arr数组里面是否包含item这个元素,返回true或者false,与arr.indexOf(item) === -1相反(等于-1说明不包含这个元素)let arr =[1,2,3,3,2,1]var newArr = [];for(var i in arr){ !newArr.includes(arr[i]) && newArr.push(arr[i])}console.log(newArr)2.re..原创 2020-09-15 20:20:29 · 473 阅读 · 2 评论 -
JavaScript--卡牌分组判断true或者false
首先分组最大的规律是求最大公约数求最大公约数的方法// 求最大公约数let gys = (a, b) => { if (b === 0) { return a } return gys(b, a % b)}// console.log(gys(2, 4))// console.log(gys(8, 4))判断结果的函数:function getResult(arr) { //卡牌排序是为了让相同的卡牌排在一起---[1,2,1,2]=&...原创 2020-09-14 22:55:58 · 121 阅读 · 0 评论 -
JavaScript--九宫格输入法字母组合算法
const str = '234';// 2,3,4按键// 按键从2开始才有字母const a = { 2: 'abc', 3: 'def', 4: 'ghi', 5: 'jkl', 6: 'mno', 7: 'pqr', 8: 'stu', 9: 'vwxyz'}// 数组->拿到234按键的字母组成的数组->['abc', 'def', 'ghi']let code = str.split('').map(ee => a[ee]);// 使用递归-&g...原创 2020-09-14 02:53:56 · 1267 阅读 · 0 评论 -
JavaScript算法--二进制子串和字符串反转
第一题难理解,请看下一张详细图解:从标红的地方看是有规律的js算法代码:const getResult = (str) => { let r = [] const match = (str) => { let j = str.match(/^(0+|1+)/)[0].toString() // ^=>“^”运算符(位异或)用于对两个二进制操作数逐位进行比较返回结果 let o = (j[0] ^ 1).toString().repea..原创 2020-09-10 03:05:45 · 327 阅读 · 0 评论