HackerRank:正负数比例的JavaScript解决方案

HackerRank:正负数比例的JavaScript解决方案

💡 原文英文,约900词,阅读约需4分钟。
📝

内容提要

给定一个整数数组,计算正数、负数和零的比例,并以六位小数格式输出。例如,对于数组[-4, 3, -9, 0, 4, 1],结果为:0.500000、0.333333和0.166667。通过遍历数组进行分类计数,最后计算比例并打印。

🎯

关键要点

  • 给定一个整数数组,计算正数、负数和零的比例。

  • 结果以六位小数格式输出。

  • 示例数组为[-4, 3, -9, 0, 4, 1],结果为0.500000、0.333333和0.166667。

  • 通过遍历数组进行分类计数,计算比例并打印。

  • 函数plusMinus接收一个整数数组,打印正数、负数和零的比例。

  • 输入格式包括数组大小和数组元素。

  • 输出格式为三行,分别是正数、负数和零的比例。

  • 使用Math.sign()方法分类数字。

  • 代码使用对象存储每个类别的计数,并计算比例。

  • 结果格式化为六位小数,确保精度。

  • 解决方案的时间复杂度为O(n)。

延伸问答

如何计算数组中正数、负数和零的比例?

通过遍历数组,分类计数正数、负数和零的数量,然后将每个类别的计数除以数组的总长度,最后打印结果。

输出比例时需要注意什么格式?

输出比例时需要以六位小数格式显示,每个比例占一行。

给定数组[-4, 3, -9, 0, 4, 1],正负数和零的比例是多少?

正数比例为0.500000,负数比例为0.333333,零的比例为0.166667。

如何使用JavaScript实现这个比例计算?

可以使用一个对象存储每个类别的计数,利用Math.sign()方法分类,然后计算比例并格式化为六位小数。

这个解决方案的时间复杂度是多少?

解决方案的时间复杂度为O(n),即线性复杂度。

输入数组的格式要求是什么?

输入格式包括数组的大小和数组元素,数组大小n应满足0 < n <= 100,元素范围为-100到100。

➡️

继续阅读