数独_erlang解题代码
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数独_erlang解题代码相关的知识,希望对你有一定的参考价值。
前几天LP玩数独,玩到大师级各种被虐,我看了看说,分分钟帮你做出来,
结果当然没有做出来。
于是上网搜了下数独的解题代码,看了下C的代码,大多是递归之类的(如http://blog.sina.com.cn/s/blog_9e16dc4d01013s1y.html)
于是想想,这种方法能不能用erlang实现呢?
尝试了一下,发现不行,因为2维数组,指针什么的在erlang完全没有,而且变量不变,所有要换个思路,既然erlang能够并发,那就并发的去填
sd_one是使用唯一填入法和隐式唯一填入法(基础摒除法)来修正要填入的数字集,如果sd_one,运行完毕(所有的填入可选值没有变化),就使用sd_guess去猜测剩下的所有填法,猜出来就给主进程发ok消息
至于变量不能变化的问题,开始我想用ets,结果发现数据不多,进程字典更快,然后一切很就是秒秒钟出来了
然后试了一下baidu里面号称很难的数独
o(^▽^)o,轻松解出来~~~
以上是关于数独_erlang解题代码的主要内容,如果未能解决你的问题,请参考以下文章
获取 badarith,[erlang,'+',[error,0],[],同时使用 Erlang 片段在 TSUNG 中执行算术运算