[Intermediate Algorithm] - Finders Keepers】的更多相关文章

题目 写一个 function,它浏览数组(第一个参数)并返回数组中第一个通过某种方法(第二个参数)验证的元素. 提示 Array.filter() 测试用例 find([1, 3, 5, 8, 9, 10], function(num) { return num % 2 === 0; }) 应该返回 8. find([1, 3, 5, 9], function(num) { return num % 2 === 0; }) 应该返回 undefined. 分析思路 这就是 Array.filt…
function find(arr, func) { //var num = 0; //return num; var res = arr.filter(func); if(res.length){ return res[0]; } return undefined; } find([1, 2, 3, 4], function(num){ return num % 2 === 0; });…
题目 创建一个计算两个参数之和的 function.如果只有一个参数,则返回一个 function,该 function 请求一个参数然后返回求和的结果. 例如,add(2, 3) 应该返回 5,而 add(2) 应该返回一个 function. 调用这个有一个参数的返回的 function,返回求和的结果: var sumTwoAnd = add(2); sumTwoAnd(3)返回 5. 如果两个参数都不是有效的数字,则返回 undefined. 提示 Closures Arguments…
题目 所有的东西都是真的! 完善编辑器中的every函数,如果集合(collection)中的所有对象都存在对应的属性(pre),并且属性(pre)对应的值为真.函数返回ture.反之,返回false. 记住:你只能通过中括号来访问对象的变量属性(pre). 提示 提示:你可以有多种实现方式,最简洁的方式莫过于Array.prototype.every(). 测试用例 every([{"user": "Tinky-Winky", "sex": &…
题目 对嵌套的数组进行扁平化处理.你必须考虑到不同层级的嵌套. 提示 Array.isArray() 测试用例 steamroller([[["a"]], [["b"]]]) 应该返回 ["a", "b"]. steamroller([1, [2], [3, [[4]]]]) 应该返回 [1, 2, 3, 4]. steamroller([1, [], [3, [[4]]]]) 应该返回 [1, 3, 4]. steamrol…
题目 队友该卖就卖,千万别舍不得. 当你的队伍被敌人包围时,你选择拯救谁.抛弃谁非常重要,如果选择错误就会造成团灭. 如果是AD或AP,优先拯救. 因为AD和AP是队伍输出的核心. 其次应该拯救打野. 因为打野死了对面就可以无所顾虑地打龙. 最后才是辅助或上单. 因为辅助和上单都是肉,死了也不会对团队造成毁灭性影响,该卖就卖. 但真实中的团战远比这要复杂,你的队伍很可能会被敌人分割成2个或3个部分. 当你救了一个重要的人时,很可能其他队友也会因此获救. 举个例子: 辅助和AD经常是在一起的,打野…
题目 传入二进制字符串,翻译成英语句子并返回. 二进制字符串是以空格分隔的. 提示 String.charCodeAt() String.fromCharCode() 测试用例 binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 0110…
题目 找出能被两个给定参数和它们之间的连续数字整除的最小公倍数. 范围是两个数字构成的数组,两个数字不一定按数字顺序排序. 例如对 1 和 3 —— 找出能被 1 和 3 和它们之间所有数字整除的最小公倍数. 提示 Smallest Common Multiple 测试用例 smallestCommons([1, 5]) 应该返回一个数字. smallestCommons([1, 5]) 应该返回 60. smallestCommons([5, 1]) 应该返回 60. smallestComm…
题目 求小于等于给定数值的质数之和. 只有 1 和它本身两个约数的数叫质数.例如,2 是质数,因为它只能被 1 和 2 整除.1 不是质数,因为它只能被自身整除. 给定的数不一定是质数. 提示 For Loops Array.push() 测试用例 sumPrimes(10) 应该返回一个数字. sumPrimes(10) 应该返回 17. sumPrimes(977) 应该返回 73156. 分析思路 由于偶数均能被2整除,所以为了减少循环,判断质数时只判断奇数,并且从3开始 for (var…
题目 给一个正整数num,返回小于或等于num的斐波纳契奇数之和. 斐波纳契数列中的前几个数字是 1.1.2.3.5 和 8,随后的每一个数字都是前两个数字之和. 例如,sumFibs(4)应该返回 5,因为斐波纳契数列中所有小于4的奇数是 1.1.3. 提示 此题不能用递归来实现斐波纳契数列.因为当num较大时,内存会溢出,推荐用数组来实现. 参考文档:博客园,Issue Remainder 测试用例 sumFibs(1) 应该返回一个数字. sumFibs(1000) 应该返回 1785.…