Доступ к готовым решениям

Переход в группу "Пользователь"

300.00
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Функция Бинарный поиск

haman sampa

Начинающий
Пользователь
Регистрация
12 Янв 2019
Сообщения
66
Лучшие ответы
0
Репутация
4
Приветствую всех!
Опубликовываю код Бинарного поиска и пример использования
Документация по бинарному поиску
:

Благодарность:
-execution


Функция:
PHP:
stock BinSearch(arr[], count, key) 
{
	new l = 0, u = count-1, m = 0;

	while (l <= u) {
		m = (l + u) / 2;
		if (arr[m] == key) return m;
		if (arr[m] < key) l = m + 1;
		if (arr[m] > key) u = m - 1;
	}
	return -1;
}
Пример из моего кода:
PHP:
// new fInfo[fSphereDrug][MAX_CORP_DRUGS] (new fSphereDrug[MAX_CORP_DRUGS])
// DrugSphere - получаем из бинарного поиска значение. (Получает в какой ячейке найдено)
new DrugSphere = BinSearch(fInfo[fSphereDrug], MAX_CORP_DRUGS, areaid);

	if (DrugSphere > -1) {

		if(!IsValidDynamicObject(fInfo[fObjectDrug][DrugSphere]) && !IsValidDynamicArea(fInfo[fSphereDrug][DrugSphere])) return 1;
		DestroyDynamicObject(fInfo[fObjectDrug][DrugSphere]);
		DestroyDynamicArea(fInfo[fSphereDrug][DrugSphere]);

		ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 5000, 1);
		return 1;
	}
Дополняйте в комментариях - после тема будет изменяться​
 
Сверху Снизу