这个轮子之前肯定是发明过的,所以我正在寻找与类似问题或部分问题有关的有用的想法或参考文献。
首先,想象一个线性的数字序列。两个连续的数字永远不会相同,因为序列是由变化定义的。然后,对该序列进行成像分支。最后,允许分支相互交叉,仍然不允许两个边界数字相同。认为这是一个不变的“地图”。
现在,观察到一系列数字。我想将这个给定的序列拟合到“map”中的任何(分支)序列。
地图中的每个数字也都有其唯一的地址值。我想将观察到的数字序列转换为地图上的一系列地址(没有,一个或几个)。
这是一个可能有助于我解释的插图(虽然直观的空间限制不需要应用,但它可能是多维的):
1 4 8
2 6 86295
6541293 6
8 5 4
2 67194138
7287 6
5
假设观察到数字序列“12682”。它从左上角垂直向下,并将产生这五个数字的地址。 “126541”适合从左上角开始,但在“6”处右转,因此它的最后三位数会得到不同的地址。
最好是java实现,如果重要。