【发布时间】:2013-12-17 01:27:00
【问题描述】:
我有一个正在努力解决的编码挑战问题。
给定一个整数数组,遍历该数组(只允许一次)将具有最大值的值连接到正确的值。您正在寻找最大的差异。
[1,2,3,6,3,1,4,3,4,2,3]
- 1,2,3 转到[4] = 6
- 3,1 转到 [7] = 4
- 3 转到 [9] = 4
- 2 转到 [11] = 3
这个问题的可能解决方案是什么?我用python写了一个解决方案,可以在更长的时间内解决它。它发现最大的区别在这种情况下是1,2,3 go to [4]。然后递归地执行列表的其余部分。您将如何在列表的一次迭代中完成此任务?
【问题讨论】:
-
为什么
2转到11而不是3? -
附带说明,您的输出似乎使用基于 1 的索引,而 Python 使用基于 0 的索引。换句话说,
a[4]是3,而不是6;这是a[3]那是6。