我对编码相当陌生,并被列入每日编码问题邮件列表并得到了这个问题:
给定一个数字列表和一个数字 k,返回列表中的任意两个数字加起来是否为 k。
我的解决方案(经过一些 stackoverflow 挖掘后)看起来像这样;
function problemOne_Solve()
{
const k = 17;
const values = [11, 15, 3, 8, 2];
for (i=0; i < values.length; i++) {
if ( values.find( (sum) => { return k-values[i] === sum} ) ) return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
我想知道为什么它有效。在我看来,带有 fat-arrow 函数的部分关闭了 if 语句条件逻辑内的括号。在 if 语句之后没有这样的括号,我认为这是必需的。
我还想知道如何输出总和为“k”的一对或多对,以进一步构建解决方案。例如,我希望能够在页面上显示对。
javascript ×1