. i
arr[0]
arr[ i] > arr[i+ 1] > . .. > arr[arr.length - 1]
Tatasusunan input ialah tatasusunan puncak tengah. Fungsi kami harus mengembalikan indeks puncak tatasusunan puncak pusat ini.
const arr = [4, 6, 8, 12, 15, 11, 7, 4, 1];
const output = 4;
kerana elemen pea pada 4.
Contoh
Berikut ialah kod - Demonstrasi langsung
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));
Output4
Atas ialah kandungan terperinci Cari puncak susunan puncak pusat dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!