В моей игре я хотел бы порождать N предметов, не обязательно одновременно. Некоторые из предметов зависят от того, что было создано раньше (цепная схема Маркова), поэтому вероятность появления двух ракетных установок подряд невысока, но существует разумная вероятность появления ракетной установки, за которой следуют ракеты. Что было бы наиболее эффективным способом сделать это? Метод будет вызываться очень часто, поэтому я стараюсь свести вычисления к минимуму.
Идея, которую я придумала, может состоять в том, чтобы создать массив N x N, который будет действовать в качестве таблицы поиска вероятностей (элемент, ранее созданный VS, для появления) Однако в этом процессе мне понадобится какой-нибудь способ генерации случайного числа с вероятностью, действующей как смещение. Я не уверен, что лучший способ сделать это. Вещи также становятся немного сложнее, когда инвентарь вступает в игру, поскольку ракеты не могут быть сгенерированы, если количество Y уже появилось. Я мог бы создать трехмерный массив и сохранить там инвентарный номер, но я не уверен, насколько эффективно будет продолжать обновлять таблицу поиска массива на основе инвентарного количества.
Это просто идея, которую я придумал, но, возможно, есть другой, лучший способ сделать это. Существуют ли какие-либо структуры данных, которые были бы более эффективными, чем трехмерный массив, или алгоритмы, которые я должен прочитать?