Проверка простого решения подпоследовательности с помощью Javascript

Имея 2 непустых массива целых чисел, напишите функцию, которая определяет, является ли второй массив подпоследовательностью первого.

Пример: массив = [5, 1, 22, 25, 6, -1, 8, 10], последовательность = [1, 6, -1, 10];

Вывод: правда

Решение:

function isValidSubsequence(array, sequence) {
  if(array.length < sequence.length) return false;
  let j=0;
  for(let i=0;i<array.length;i++) {
    if(array[i] === sequence[j]) j++;
    if(j === sequence.length) break;
  }
  return j === sequence.length
}

Пояснение кода:

Это решение должно пройти через каждый узел первого массива, чтобы проверить, соответствует ли значение следующему значению второго массива. Переменная j увеличивается каждый раз, когда находит совпадение. Результат оценивает количество раз, когда переменная (j) увеличивается.

Сложность во времени и пространстве:

Максимальное время, необходимое для решения этой задачи, составляет O (N) 1-го массива, и для переменной j требуется 1 дополнительное место.