Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 22.09.2020, 19:25
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,004

если массив отсортирован, можно вообще бинарным поиском
Ответить с цитированием
  #12 (permalink)  
Старый 25.09.2020, 01:00
Новичок на форуме
Отправить личное сообщение для Лоэнрон Посмотреть профиль Найти все сообщения от Лоэнрон
 
Регистрация: 24.07.2018
Сообщений: 8

function getNum(arr, a){
	arr.sort();
	for(let i = 0; i < arr.length; i++){
		if(arr[i] > a){
			if(i == 0) return `${arr[i]}`;
			if( (arr[i] - a) > (arr[i-1] - a) ){
				return `${arr[i-1]},${arr[i]}`;
			} else {
				return `${arr[i-1]},${arr[i-2]}`;
			}
		} else if (i == arr.length - 1){
			return `${arr[i]}`;
		}
	}
}

let arr = [99,56,87,78,66,55];

console.log(getNum(arr, 88)); // 87,99
console.log(getNum(arr, 100)); // 99
console.log(getNum(arr, 10)); // 55
Ответить с цитированием
  #13 (permalink)  
Старый 25.09.2020, 09:46
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Лоэнрон,
строка 2.
Цитата:
Порядок cортировки по умолчанию соответствует порядку кодовых точек Unicode.
для сортировки чисел необходимо указать функцию сортировки.
arr.sort((a,b) => a - b);

атрибут run сделает ваш код запускаемым
например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как найти node элемент по позиции в html документе и обратоно meded90 Общие вопросы Javascript 0 06.09.2014 22:45
Как разбить input на заданное число ячеек как в кроссворде? javascript_pupil (X)HTML/CSS 2 20.08.2014 10:28
Как найти конец плоского файла Don_001 Общие вопросы Javascript 1 07.07.2009 12:47
как найти нужный объект? `p r o x y jQuery 2 05.05.2009 01:12
Как найти путь к файлу для модификации? JuliaMilan Firefox/Mozilla 0 31.03.2009 14:06