我正在尝试构建一个解决方案来对值对数组进行正确排序,以便它们以正确的顺序结束。以Python为例:
theArray = [['Dempster St','Main St'],['Dempster St','Church St'],['Emerson St','Church St']]
我需要对数组进行排序,使其最终看起来像这样:
theArray = [['Emerson St','Church St'],['Church St','Dempster St'],['Dempster St','Main St']]
一些注意事项:
不能保证每对中的顺序指向同一方向。例如:在上面的示例中,第二个数组元素的成对顺序指向与其余元素相反的方向(Dempster到Church,而不是Church到Dempster)
代码的构建应该使它既可以在Python中使用,也可以在C中使用,因此理想情况下,应该在没有任何特定于语言的技巧的情况下完成它
最后,构建最终数组的顺序无关紧要,只要元素遵循正确的顺序。例如,以下解决方案也适用:
theArray = [['Main St','Dempster St'],['Dempster St','Church St'],['Church St','Emerson St']]
想法?你知道吗
我设法使它成功了。我通过使用多个嵌套循环来迭代每一对中的每个元素—这样我就可以检查它们的唯一性(为了做到这一点,每当一个项被多次找到时,我就会增加一个相关的变量,比如refcount);最后,计数最低的两个元素是路由的开始和结束。从那里很容易找到其余的联系。你知道吗
相关问题 更多 >
编程相关推荐