如何使用Hadoop解决Sudoku?

sudoku

Hadoop提供了一个示例jar文件用于测试目的。 在这个jar文件中,有一个示例来解决数独问题。

1.输入文件

要使用此示例,我们需要为数独问题创建一个输入文件。 在此文件中,每个数独单元都可以是数字或“?” 用空格作为分隔符。就像这样:

文件:puzzle1.dta

8 5 ? 3 9 ? ? ? ?
? ? 2 ? ? ? ? ? ?
? ? 6 ? 1 ? ? ? 2
? ? 4 ? ? 3 ? 5 9
? ? 8 9 ? 1 4 ? ?
3 2 ? 4 ? ? 8 ? ?
9 ? ? ? 8 ? 5 ? ?
? ? ? ? ? ? 2 ? ?
? ? ? ? 4 5 ? 7 8

您可以在Hadoop目录中找到此“ puzzle1.dta”文件:

hadoop-0.20.2/src/examples/org/apache/hadoop/examples/dancing/puzzle1.dta

要么

hadoop-2.0.0-alpha-/src/hadoop-mapreduce-project/hadoop-mapreduce-examples/
	src/main/java/org/apache/hadoop/examples/dancing/puzzle1.dta

2. Hadoop部分

现在,我们需要将此输入文件保存在本地目录中。 并将此输入提供给hadoop示例jar。 启动hadoop并运行以下命令:

$hadoop-directory/bin/hadoop jar hadoop-examples-version.jar sudoku puzzle1.dta

Solving puzzle1.dta
8 5 1 3 9 2 6 4 7
4 3 2 6 7 8 1 9 5
7 9 6 5 1 4 3 8 2
6 1 4 8 2 3 7 5 9
5 7 8 9 6 1 4 2 3
3 2 9 4 5 7 8 1 6
9 4 7 2 8 6 5 3 1
1 8 5 7 3 9 2 6 4
2 6 3 1 4 5 9 7 8

Found 1 solutions

Hadoop会在几秒钟内为您提供所有可能的难题解决方案。(如果答案不只一个,时间会更长)。

注意
您必须提供hadoop的本地路径(在此示例中,jar文件和拼图位于同一目录中)

如有疑问,您可以给我留言。

参考文献

  1. 阿帕奇Hadoop
  2. 跳舞链接算法

翻译自: https://mkyong.com/hadoop/how-to-solve-sudoku-using-hadoop/

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值