Внедрение постоянно расширяющейся системы нумерации
-
29-10-2019 - |
Вопрос
Мне нужны ваши предложения о том, как мне следует реализовать постоянно расширяющуюся систему нумерации для моего приложения. Мое приложение строит граф, вершины которого однозначно пронумерованы целое число. Проблема, с которой я сейчас сталкиваюсь, - это наибольшее число, представленное int или long, который устанавливает верхний предел количества вершин, которое может вместить граф.
Здесь приветствуются любые мнения.
Спасибо
Решение
Используйте 64-битные целые числа (java: long, c / c ++: long long).
У вас, вероятно, в любом случае недостаточно памяти для хранения 2 ^ 63 узлов графа, поэтому вам не понадобится больше.
Помните: если каждый узел хранит свой собственный индекс, использование 32-битной переменной индекса потребует 16 гигабайт памяти, прежде чем вы получите первое столкновение.