我已经开发出生成单个史诗数组的需求。一开始看起来相当标准,例如:
epic = {
0 : "epic parent"
1 : {
0 : "bob child",
1 : {
0 : "mary grand-child",
1 : {
0 : "jane great-grand-child",
etc. (e.g. down to "john (great*1000)-grand-child")
}
},
2 : {
etc.
}
},
2 : {
etc.
}
etc.
}
但问题是,它有潜力发展到巨大的深度。可能会进入数百个甚至数千个级别,当然也可能非常宽。这样做的原因是,任何一个新条目都可以同样添加为任何现有点的直接子节点,无论是它epic[1]
还是epic[1][21][41][661][3][72][8543][22][1][2][etc.]
我的问题是,像这样构建一个“史诗”数组有什么影响?不同语言处理的巨大/深度数组是否存在差异?有些语言会比其他语言更适合这个吗?如何最好地存储这个数组?
举例说明这一点的最简单方法可能是想象存储从一个人开始的整个家谱,在一个数组中,有数百代(并且还想象每个“父母”可以有无限的孩子而不是 2.5 :)
目前我对数组的唯一接触是在 php 和 javascript 中,所以它们将是一个很好的起点。