算法习题汇总
shazichen
这个作者很懒,什么都没留下…
展开
-
数值格式化:千位划分
var fn = function (num) { // 对数值取绝对值并切割 var newNum = String(Math.abs(num)).split('.') // 获取整数部分格式化字符串 var first = format(newNum[0]) // 判断并拼接格式化的小数部分 var value = newNum.length == 2 ? first + '.' + format(newNum[1]) : first; return num > 0 ? value原创 2020-07-20 15:24:57 · 138 阅读 · 0 评论 -
牛客面试题(单选):巴士车发车数
题目:由甲地到乙地有一条线路的巴士,全程行驶时间为42分钟,到达总站后,司机至少休息10分钟,巴士就调头行驶.如果这条线路甲、乙两边总站每隔8分钟都发一辆(不必是同一时间),则这条线路至少需多少辆巴士?连简单数学都不行的渣渣,表示很难受,查到了作业帮的题解如下问题解析:根据题意可知,需要的巴士辆数要满足在从出发至回站这段进间内能够每八分钟开出一辆,回来一辆.因此,要先求出一辆巴士从出发到回站再出发需要多少时间:在路上单程需要42分钟,每站休息10分钟,所以需要(42+10)×2=104(分钟),原创 2020-07-17 22:15:34 · 546 阅读 · 0 评论 -
递归实现1到100求和 与数学公式计算求和
递归实现1~100求和var sum = function(n1, n2) { if (n2 < 2) { return n1; } let n = n1 + n2; if (n2 > 1) { return sum(n, n2 - 1); }}console.log(sum(1, 100));数学公式求和: (公式:首尾相加 * 个数 / 2) var sum = function(n1, n2) { return (n1 + n2) * n.原创 2020-07-16 23:40:17 · 1477 阅读 · 0 评论 -
俩软件版本号比较
实现一个方法,用以比较两个版本号(version1, version2)大小。如果version1 > version2,返回 1;如果version1 < version2,返回 -1;其他情况返回0。版本号规则x.y.z,xyz 均为大于等于 0 的整数,且至少有 2 位。示例:// compareVersion(‘0.1’, ‘1.1.1’); // 返回-1// compareVersion(‘13.37’, '1.2 '); // 返回1// compareVersion(‘.原创 2020-07-08 10:54:07 · 1286 阅读 · 0 评论