javascript - 检查 JS 中的数组 - 列表是否已排序?

标签 javascript arrays sorting

<分区>

我需要创建一个程序来检查数组中的列表是否已排序。我有三个输入数据:

1,2,3,4,5

1,2,8,9,9

1,2,2,3,2

这是我的代码:

let sorts = +gets(); // 3
let list = [];

for (let i = 0; i < sorts; i++) {
    list[i] = gets().split(',').map(Number); // The Array will be: [ [ 1, 2, 3, 4, 5 ], [ 1, 2, 8, 9, 9 ], [ 1, 2, 2, 3, 2 ] ]
}

for (let i = 0; i < list[i][i].length; i++){
    if (list[i][i] < list[i][i +1]) {
        print('true');
    } else {
        print('false');
    }
}

我需要在新行上打印所有列表是真还是假。对于这个例子,我的输出需要是:

正确

正确

错误

我不知道如何解决这个问题。

最佳答案

这样的事情怎么样:

!![1,2,3,4,5].reduce((n, item) => n !== false && item >= n && item)
// true

!![1,2,8,9,9].reduce((n, item) => n !== false && item >= n && item)
// true 

!![1,2,2,3,2].reduce((n, item) => n !== false && item >= n && item)
// false

Reduce 会从字面上将数组缩减为单个值——在我们的例子中是一个 bool 值。

在这里,我们在每次迭代中调用一个函数,(n, item) 是我们的函数签名,它的主体是 n !== false && item >- n && item - 我们确保 n 存在(n 是我们的累加器 - 阅读!),测试 item 是否大于 n ,并确保 item 存在。

数组中的每个元素都会发生这种情况。然后我们使用 !! 将结果强制转换为真正的 bool 值。

关于javascript - 检查 JS 中的数组 - 列表是否已排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53833139/

相关文章:

python - sort() 和 reverse() 函数不起作用

javascript - 使用 jQuery 淡入淡出背景图像?

java - boolean 数组值比较

python - 如何在 Django 列表中排序

javascript - 在 jQuery 中创建 JSON 对象数组

c - 在程序中计算标量积的第一个 'for' 循环之后,第二个 'for' 循环被忽略

javascript - 如何对D3中的节点进行排序,以使连接路径清晰明了?

javascript - json_encode 给出 HTML 实体。如何转换匹配的 XML 约定?

javascript - React js -[违规] 向滚动阻塞 'mousewheel' 事件添加了非被动事件监听器

javascript - 使用 jquery 阻止表单提交的问题