ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript で中央ピークの配列のピークを見つける

JavaScript で中央ピークの配列のピークを見つける

WBOY
リリース: 2023-08-24 12:21:07
転載
872 人が閲覧しました

在 JavaScript 中查找中心峰值数组的峰值

#Center Peak Array

次のプロパティが満たされる場合、配列を arr

Center Peak Array -# と呼びます。

    ##arr.length >= 3
  • ## のような i と 0 #arr[0]

  • arr[i] > arr[i 1] > .. . > arr[arr.length - 1]

Question 数値配列を受け入れる JavaScript 関数を作成する必要がありますarr を最初の唯一のパラメータとして指定します。

入力配列は中心ピーク配列です。私たちの関数は、この中央ピーク配列のピーク インデックスを返す必要があります。

たとえば、関数への入力が

input

const arr = [4, 6, 8, 12, 15, 11, 7, 4, 1];
ログイン後にコピー
output

const output = 4;
ログイン後にコピー
の場合 出力の説明

インデックス 4 (15) の要素が配列のピーク要素であるためです。

以下はコードです -

ライブデモンストレーション

const arr = [4, 6, 8, 12, 15, 11, 7, 4, 1];
const findPeak = (arr = []) => {
   if(arr.length < 3) {
      return -1
   }
   const helper = (low, high) => {
      if(low > high) {
         return -1
      }
      const middle = Math.floor((low + high) / 2)
      if(arr[middle] <= arr[middle + 1]) {
         return helper(middle + 1, high)
      }
      if(arr[middle] <= arr[middle - 1]) {
         return helper(low, middle - 1)
      }
      return middle
   }
   return helper(0, arr.length - 1)
};
console.log(findPeak(arr));
ログイン後にコピー

出力

4
ログイン後にコピー

以上がJavaScript で中央ピークの配列のピークを見つけるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート