Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Самый быстрый поиск в массиве
 
 автор: Valleri   (01.06.2011 в 16:13)   письмо автору
 
 

Понятно, что сортированный и т.д.
Имею ввиду в цикле или нет, если в цикле то в каком и как быстрее сравнивать числовые и символьные переменные?
Или функции array_search, in_array быстрее работают

  Ответить  
 
 автор: cheops   (01.06.2011 в 17:14)   письмо автору
 
   для: Valleri   (01.06.2011 в 16:13)
 

1) Встроенные функции всегда работают быстрее (они на C++), самописанного кода, по крайней мере в PHP.
2) Все операции с числовыми данными происходят быстрее, чем с символьными. На числовые данные нужен грубо говоря один такт процессора, который произведет вычисление над данными в регистрах, а не лопатить длинную строку в оперативной памяти.

  Ответить  
 
 автор: Valleri   (01.06.2011 в 18:09)   письмо автору
 
   для: cheops   (01.06.2011 в 17:14)
 

Вы правы http://habrahabr.ru/blogs/personal/26762/
$key = array_search($search, $test_array, true);
// если нашли
if ($key!==FALSE) // надо именно !== а не !=, ведь номер первого элемента - 0
{
echo $test_array[$key];
}

Но мне лучше написать, там не сложно. Универсальности больше.
Только есть ли разница между алгоритмами: бинарным, интерполяционным, половинным делением? Ощущение, что одно и то же - просто игра слов

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования