Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.05.2011, 15:20
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 21  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
Если длина = 10, то проверять имеет смысл только индексы 0..8. Поскольку если ни в одном из их нашего числа нет, то оно однозначно в 9-м. Проверять то, что мы и без того знаем -- бессмыслено.
ох, спорно...
я смеялся над тем, что у индусских программистов логическая переменная принимает три значения, пока не столкнулся с этим случаем в жизни


Цитата:
EDIT: Да, а еще можно было бы находить предполагаемый участок, куда упал рандомальный выбор по типу как в quicksort, т.е. делить оставшийся диапазон на 2 все время... хм... ну, вечером наверн сделаю
еще можно веса по величине упорядочить...
не знаю, правда, что это дает...

кстати, при большом количестве испытаний перебираться в среднем будут не n элементов, а n/2

Старый 22.05.2011, 15:23
Crazy вне форума Посмотреть профиль Отправить личное сообщение для Crazy Посетить домашнюю страницу Crazy Найти все сообщения от Crazy
  № 22  
Ответить с цитированием
Crazy
[+1 23.05.11]
 
Аватар для Crazy

Регистрация: Dec 2001
Сообщений: 4,159
Цитата:
Сообщение от mikhailk Посмотреть сообщение
ох, спорно...
Шо, правда? И какой же контраргумент у Вас есть? ))
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++

Старый 22.05.2011, 15:48
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 23  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
Шо, правда? И какой же контраргумент у Вас есть?
я просто опасаюсь "очевидных вещей по умолчанию"

Вот показательный пример. Нужна фунция, которая получает на вход 1 или 2 и отдает, соответственно, 1 или 0. Вот решение:
Код AS3:
private function calc(inputNumber:int) : int
{
  var outputNumber:int = 2 - inputNumber;
  return outputNumber;
}
Это правильное решение?

Старый 22.05.2011, 17:17
Crazy вне форума Посмотреть профиль Отправить личное сообщение для Crazy Посетить домашнюю страницу Crazy Найти все сообщения от Crazy
  № 24  
Ответить с цитированием
Crazy
[+1 23.05.11]
 
Аватар для Crazy

Регистрация: Dec 2001
Сообщений: 4,159
Цитата:
Сообщение от mikhailk Посмотреть сообщение
я просто опасаюсь "очевидных вещей по умолчанию"
Мы говорим не об абстрактных вещах, а о конкретном алгоритме. По конкретному месту конкретного алгоритма возражения есть?
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++

Старый 22.05.2011, 18:08
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 25  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236

это совершенно конкретные вещи.
ок, спорить не буду.

Старый 22.05.2011, 18:40
Crazy вне форума Посмотреть профиль Отправить личное сообщение для Crazy Посетить домашнюю страницу Crazy Найти все сообщения от Crazy
  № 26  
Ответить с цитированием
Crazy
[+1 23.05.11]
 
Аватар для Crazy

Регистрация: Dec 2001
Сообщений: 4,159
Цитата:
Сообщение от mikhailk Посмотреть сообщение

это совершенно конкретные вещи.
ок, спорить не буду.
Ok. Поскольку конкретных возражений нет, спор будем считать оконченным.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++

Старый 22.05.2011, 19:13
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 27  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
тут не спор, а дискуссия...
Ну вот давайте подведем итог что ли.

*Вариант 1 (т.е. пост 2)
Достоинства:
- моментальное получение числа по рандому (взятие по индексу из массива), т.к. не нужно крутить циклы.
- Можно доработать так, чтобы не трогать исходный массив, а формировать "рабочий". При чем, только после изменения входных данных (чилса / их вес).
Недостатки:
- Если много чисел и у них задан огромный вес, то формирование "рабочего" массива будет ооочень большим, а в памяти он займет ооочень много места.

*Вариант 2 (т.е пост 6 и ниже).
Достоинства:
- Достаточно удобно, не требуются временные массивы
- Потребуется меньше памяти во время выполнения
Недостатки:
- При каждом рандоме нужно крутить цикл с суммированием веса, чтобы понять, какое число выпало

По-моему стандартная ситуация - мозги vs память


Последний раз редактировалось i.o.; 22.05.2011 в 19:15.
Старый 22.05.2011, 19:13
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 28  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
У меня, у меня есть!
Как-бы в таком случае не понятно зачем добавлять лишнюю локальную переменную, делать 2 точки выхода (которые заставят компилятор, возможно балансировать стек по-другому), вобщем, запутаная логика, и не понятно зачем. (отдельно замечу, что скорее всего, с точки зрения производительности, скорее всего никакой разницы с первым "наивным" алгоритмом не будет). Где-то у Лебедева была выставка идиотских проектов пульта для лифта - люди чего только ради оригинальности не придумают... (аналогично, новички зачем-то стремятся часто использовать "тернистый оператор", или без необходимости вместо i++ ++i писать, наверное от желания расплачиваться в ресторане подписью на салфетке) а потом к любимой девушки на свидание опаздываешь

> При каждом рандоме нужно крутить цикл с суммированием веса, чтобы понять, какое число выпало
Не нужно, см. мой последний вариант

Оффтоп:
Если вы думали, что идиоты, которые проектируют пульты для лифтов встречаются только на сайте Лебедева, то, не далее чем на прошлой неделе нужно было мне зайти в гости к представителям одной немаленькой конторы снимающий 10й этаж в 12-ти этажном здании. А теперь, устройство тамошнего лифта: Перед входом (т.е. снаружи) - пульт с 10 кнопками, как на телефоне, только без # и * + одна большая красная кнопка неопределенного назначения. Я на нее и нажал. Захожу в лифт - а в нем пульта нету. Спрашиваю у других пассажиров: "а не подскажете, как проехать на 10-й этаж?". На что мне ехидно так - а раньше думать надо было, вот сейчас выйдешь, набери номер этажа, и жми красную кнопку, лифт за тобой приедет и на заказаный этаж отвезет.
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 22.05.2011 в 19:26.
Старый 22.05.2011, 19:21
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 29  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
Цитата:
Не нужно, см. мой последний вариант
Насколько вижу, все равно требуется поиск, будь то цикл, дерево или еще что-то..
Т.е. тупо по индексу / хэшу не получится взять. Ну или хотябы просто применить какую то мат. функцию (без циклов и поиска).

Старый 22.05.2011, 19:29
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 30  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Сумма-то не пересчитывается.
__________________
Hell is the possibility of sanity

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
выпад , массив , Рандом , шанс
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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