Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Определение максимального числа в массиве через цикл (http://www.flasher.ru/forum/showthread.php?t=180752)

tsarapkabel 07.06.2012 22:17

Определение максимального числа в массиве через цикл
 
Есть массив чисел. Например
Код AS3:

var arrayOfUints:Array = [3, 5, 7, 4, 2, 0, 1, 2];

Как в цикле определить максимальное число?

Есть, конечно, Math.max, но такой вариант "не смотрится", да и к тому же размер массива может поменяется динамически:
Код AS3:

maximum = Math.max(arrayOfUints[0], arrayOfUints[1], arrayOfUints[2], arrayOfUints[3], arrayOfUints[4], arrayOfUints[5], arrayOfUints[6], arrayOfUints[7]);


КорДум 07.06.2012 22:19

Простейшая же задача.
Код AS3:

var max = arr[0];
for (var i:int = 1; i < arr.length; i++) {
    if (max < arr[i]) max = arr[i];
}


tsarapkabel 07.06.2012 22:25

Спасибо. Этот вариант приходил в голову, думал есть что-то более простое :)

strangedk 07.06.2012 22:27

А куда проще-то. Без перебора не обойтись

udaaff 07.06.2012 22:30

Цитата:

Сообщение от tsarapkabel (Сообщение 1083630)
Есть, конечно, Math.max, но такой вариант "не смотрится", да и к тому же размер массива может поменяется динамически:

Код AS3:

Math.max.apply(this, arrayOfUints)


tsarapkabel 07.06.2012 22:35

Цитата:

Сообщение от strangedk (Сообщение 1083633)
А куда проще-то.

Первое что пришло в голову :D
Код AS3:

Math.max(array);

Цитата:

Сообщение от udaaff (Сообщение 1083634)
...

Вот оно! Спасибо!

GemiBillyBob 08.06.2012 16:02

Можно ещё так
Код AS3:

var max:int = (array.sort(Array.NUMERIC|Array.DESCENDING))[0];


Aquahawk 08.06.2012 16:12

операция сортировки много затратнее чем поиск.


Часовой пояс GMT +4, время: 07:30.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.