Maison > interface Web > js tutoriel > Obtenez la longueur maximale d'un tableau en utilisant JavaScript

Obtenez la longueur maximale d'un tableau en utilisant JavaScript

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2023-08-24 12:25:08
avant
589 Les gens l'ont consulté

使用 JavaScript 获取数组中山的最大长度

Sous-séquence Shan

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]

Question

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];
Copier après la connexion

output

const output = 5;
Copier après la connexion

explication de la sortie

car le sous-tableau requis est -

[2, 5, 8, 4, 3]
Copier après la connexion

Exemple

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));
Copier après la connexion

Sortie

5
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal