Nous appelons tout sous-tableau (continu) une montagne si les propriétés suivantes sont satisfaites -
sub.length >= 3
Il y en a 0 B[ i+1] > ... > sub[sub.length - 1]
Nous devons écrire une fonction JavaScript qui accepte un tableau de nombres arr comme premier et unique paramètre.
Notre fonction doit renvoyer la longueur de la plus grande sous-séquence de montagne présente dans le tableau arr, ou 0 si elle est présente.
Par exemple, si l'entrée de la fonction est
input
const arr = [3, 2, 5, 8, 4, 3, 6];
output
const output = 5;
explication de la sortie
car le sous-tableau requis est -
[2, 5, 8, 4, 3]
Voici le code -
Démo en temps réel
const arr = [3, 2, 5, 8, 4, 3, 6]; const mountainLength = (arr = []) => { let max = 0 for(let left = 0; left < arr.length; left++) { let right = left while(arr[right] < arr[right + 1]) { right++ } const top = right while(right > left && arr[right] > arr[right + 1]) { right++ } if(right > top && top > left) { max = Math.max(max, right - left + 1) left = right left-- } } return max } console.log(mountainLength(arr));
5
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!