算法
寒林无纸笔
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
中级算法代码-斐波纳契奇数求和
斐波纳契奇数求和给一个正整数num,返回小于或等于num的斐波纳契奇数之和。斐波纳契序列中的前两个数字是1和1,序列中的每个附加数字是前面两个数字的和。斐波纳契序列的前六个数字是1,1,2,3,5和8。function sumFibs(num) { var arr = []; if(num == 1){return 2}; arr[0] = 1; arr[1]...原创 2019-07-29 09:56:24 · 482 阅读 · 0 评论 -
中级算法代码-字符串移动插入
字符串移动插入输入一个字符串,把一个字符串的第一个辅音或辅音丛移到词尾,然后加上后缀 “ay”。如果单词以元音开始,则在词尾添加 “way” ,输入字符串需要是英文单词全部小写。function translate(str) { var index = str.search(/[a|e|i|o|u]/); //正则 if(index == 0){ str += 'w...原创 2019-07-26 17:49:28 · 200 阅读 · 0 评论 -
中级算法代码-数字转罗马数字
数字转罗马数字将给定的数字转换成罗马数字function convert(num) { var a = ["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"], // 1-9 b = ["X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"], // 10...原创 2019-07-26 17:45:11 · 204 阅读 · 0 评论 -
中级算法代码-两个数组去重(不保留重复)
找出数组间差异比较两个数组,返回一个新数组,新数组的元素为两个给定数组中所有独有的数组元素,重复元素统统删掉function diff(arr1, arr2) { var newArr = []; //要返回的新数组 var s1 = arr1.filter(function(a){ return arr2.indexOf(a) == -1; //第一个数组中独特的 });...原创 2019-07-26 17:40:33 · 507 阅读 · 0 评论 -
初级算法代码-回文算法
回文算法写一个字符串,验证如果给定的字符串是回文(忽略标点符号、大小写和空格,正着读和反着读一模一样),返回true,反之,返回false。例如:“race CAR”,“1 eye for of 1 eye.”function same(data) { var reg = /[^A-Za-z0-9]/gi, //正则 str1 = data.replace(reg,'')....原创 2019-07-26 13:41:20 · 213 阅读 · 0 评论 -
初级算法代码-去除数组中多个值
去除数组中任意多个值实现一个函数,第一个参数是初始数组,后跟一个或多个参数。从初始数组中删除与这些参数具有相同值的所有元素。方法一:使用数组的 filter 方法function destroyer(arr) { var arrs = arguments[0], //提取数组 arg= arguments; //提取参数 function selec...原创 2019-07-26 13:49:13 · 277 阅读 · 0 评论 -
初级算法代码-位移密码
位移密码算法写一个函数,参照ROT13密码,实现输入加密字符串,输出解密字符串。(字母会移位13个位置。由’A’ ↔ ‘N’, ‘B’ ↔’O’,以此类推)。字母都是大写,不转化任何非字母形式的字符(空格,标点符号)function rot13(str) { var arr = str.split(''); arr = arr.map(function (item) { if(...原创 2019-07-26 13:47:58 · 680 阅读 · 0 评论 -
初级算法代码-末尾字符确认
确认末尾字符算法检查一个字符串是否以指定的字符串结尾,如果是,返回true;如果不是,返回false。function confirm(str, target) { var reg = /[' ']/gi, arr1 = str.replace(reg,'').split(''), //去除空格后转为数组 arr2 = target.split(''), leng = arr...原创 2019-07-26 13:46:31 · 203 阅读 · 0 评论 -
初级算法代码-设置首字母大写
设置首字母大写在函数中输入字符串,让返回的字符串中,每个单词首字母都大写,其余部分小写,包括连词(I’m 这种)。function title(str) { var arr = []; str.split(' ').forEach(function(item){ //转化为数组,用数组的 forEach 方法 var strs = item.toLowerCa...原创 2019-07-26 13:45:33 · 730 阅读 · 0 评论 -
中级算法代码-找出最小公倍数
找出最小公倍数找到所提供参数的最小公倍数,范围是两个数字构成的数组,两个数字不一定按数字顺序排序。function smallestCommons(arr){ arr.sort(); //按大小排序 var num1 = arr[0], sum = arr[0]+1; while(sum <= arr[1]){ num1 = [num...原创 2019-07-29 10:04:29 · 500 阅读 · 1 评论 -
中级算法代码-多个数组去重(保留重复)
数组去重传入两个或两个以上的数组,返回一个新数组,包含所有数组中的所有值,不包含重复值,非重复的数字以它们原始的顺序排序。function unite(arr1, arr2, arr3) { var num = arguments.length, arr = []; for(var i = 0; i < num; i++){ arr.push(argum...原创 2019-07-26 17:59:44 · 661 阅读 · 0 评论
分享