0

这个问题在最近的一次采访中被问到。请提出一些建议:

将 16x16 的图片分成 4x4(16 块)大小的块并打乱。建议一种算法来重新排列它。

4

4 回答 4

1

如果它是软件工程类型的问题并且您自己划分它,您可以作弊并将每个位置与每个部分一起存储。;)

他们可能正在寻找一些模式匹配的解决方案。也许将每侧(顶部/底部/左侧/右侧)的最后一行像素与其他(水平/垂直)侧(具有一定的容差)进行比较。每一方都将获得一定的分数,逐步匹配,直到全部完成。

于 2012-07-10T14:45:47.860 回答
0

假设除了碎片的像素之外什么都没有,这是概率解决问题的好方法

http://people.csail.mit.edu/taegsang/JigsawPuzzle.html

于 2012-07-15T13:40:02.317 回答
0

我希望这些作品中的每一个都有一个标识(比如订购/重新排列它们的数字)。我可以认为这个问题类似于接收 UDP 数据包(通常 UDP 数据包可能会被乱序接收,然后我们需要对它们进行排序。)

所以任何排序算法都应该有效。

如果我误解了这个问题,请纠正我。

于 2012-07-11T17:38:39.547 回答
0

在不涉及像素匹配算法的情况下,我想我会在这里采用动态编程自下而上的方法。首先找到最有可能相邻的 8 组 2 件,然后尝试从较小的子集构建整个事物。

于 2012-07-10T14:51:10.857 回答