Advertisement
Guest User

Untitled

a guest
Mar 21st, 2019
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.28 KB | None | 0 0
  1. function BinarySearch(arr, number) {
  2. if (arr.length === 1 && arr[0] !== number) {
  3. // Проверяем длину массива и его значение и если условие выполняется то выходим из рекурсии и возвращаем значение
  4. return "Выбранного числа нет в массива, попробуйте другое значение";
  5. }
  6.  
  7. let middle = Math.floor(arr.length / 2); // задаём точку поиска в центре массива
  8.  
  9. if (arr[middle] === number) {
  10. return `Число ${arr[middle]} найдено!`;
  11. } else if (arr[middle] > number) { // если значение в середине массива больше нужного числа,
  12. arr = arr.splice(0, middle); // то оставляем в массиве числа от начала до середины
  13. return BinarySearch(arr, number);
  14. } else if (arr[middle] < number) {
  15. arr = arr.splice(middle); // если значение в середине массива меньше нужного числа,
  16. return BinarySearch(arr, number); // то оставляем в массиве числа от середины до конца
  17. }
  18. }
  19.  
  20. BinarySearch([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 14, 56], 10);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement