在 JavaScript 中查詢最長的連續連線
問題
我們需要編寫 JavaScript 函式,該函式將陣列 arr 作為第一個也是唯一引數,其中包含成對的數字。在每對數字中,第一個數字始終小於第二個數字。
現在,我們定義一對 (c, d),它可以後跟另一對 (a, b),當且僅當 b < c 時。對的鏈可以用這種方式形成。我們的函式應該找到可以形成的最長鏈。
例如,如果輸入函式為
輸入
const arr = [ [1, 2], [2, 3], [3, 4] ];
輸出
const output = 2;
輸出說明
最長鏈為 [1,2] -> [3,4]
示例
以下是程式碼 −
const arr = [
[1, 2], [2, 3], [3, 4]
];
const findLongestChain = (arr = []) => {
arr.sort(([, b], [, d]) => b - d)
let currentEnd = arr[0][1]
let count = 1
for (const [start, end] of arr) {
if (start > currentEnd) {
count += 1
currentEnd = end
}
}
return count
}
console.log(findLongestChain(arr));輸出
2
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP