Задать вопрос
littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.

Как найти максимальное значение без ?/switch/if?

В голову пока пришло решение только с циклами.
Вот пример:
$arr = [1,2,3,4,5,6,98,65,190];
$max = $arr[0];
foreach($arr as $val){
     while($val > $max){
          $max = $val;
           break;
     }
}


Может есть более красивые решения?

upd:
Без привязки к языку. PHP, просто как пример взял. Интересует сам алгоритм.
  • Вопрос задан
  • 2743 просмотра
Подписаться 2 Оценить 2 комментария
Решение пользователя alexxandr К ответам на вопрос (7)
@alexxandr
you'll see in memory only 0xDEADFACE
max(a, b) = (a > b)*a + (a < b)*b

при FALSE = 0; TRUE = 1
Ответ написан
Комментировать