我需要你的建议,关于如何为我的应用程序实现一个不断增加的编号系统。 我的应用程序建立一个图表,其顶点唯一枚举为 整数。 我目前面临的问题是可以用int或long表示的最大数字, 对图形可容纳的顶点数量造成上限。实现一个不断增加的编号系统
所有的意见都欢迎在这里。
由于
我需要你的建议,关于如何为我的应用程序实现一个不断增加的编号系统。 我的应用程序建立一个图表,其顶点唯一枚举为 整数。 我目前面临的问题是可以用int或long表示的最大数字, 对图形可容纳的顶点数量造成上限。实现一个不断增加的编号系统
所有的意见都欢迎在这里。
由于
使用64位整数(java的:长,C/C++:长长)。
您可能没有足够的内存来存储2^63个图形节点,所以您不需要更多。请记住:如果每个节点都存储自己的索引,那么在第一次碰撞之前,使用32位索引变量将需要16千兆字节的内存。
许多语言都支持表示任意精度整数的BigInteger类型或类。你使用哪种语言?你正在处理的值的范围是什么? – templatetypedef 2012-01-17 11:13:53
@templatetypedef,我的应用程序是用C++编写的。 这样一个编号系统需要没有上限,这样我的应用程序才能理想地生成新的顶点,只要内存足够。 – 2012-01-17 11:20:04
你的图有多少个顶点?除非你的图表从不具有边缘,否则实际上你在用完整数之前可能会耗尽内存。 – DSM 2012-01-17 11:22:16