我喜欢学习一些关于算法的知识,特别是可以帮助我构建纵横文字编织器的算法(简单的一种)
哪些算法应该学习?哪些算法我需要学习编写纵横文字编织器?
2
A
回答
4
我将与以下几点入手:
开始很小,用一个100字的单词列表和一个2乘2的填字游戏。
0
尝试使用与DFS类似的回溯功能。所以学习DFS然后学习回溯。
A *也很好,但你需要很好的启发式。具有A *搜索的前缀树可能有效。但首先开始简单的回溯版本。
顺便学习回溯的一个优点是,可以解决很多其他的拼图也使用它,喜欢数独,15个王后,速度在迷宫和锯齿锯拼图:)
0
有无你决定使用哪种编程语言?在处理字符和字符串时,某些语言比其他语言更好,例如Java和C++具有相当好的字符/字符串处理能力。除了Yuval和Atul提到的之外,我想你需要了解一下Longest Common Substring算法。
另请查看this SO thread的解答。有一些算法步骤被讨论来创建一个纵横字谜编织器。你应该有一个有效的算法来实现你遵循的每一步。
1
你的问题的主要类别是CSP(约束满足问题),这主要是由回溯算法
相关问题
- 1. 哪些需要学习Android?
- 2. 我需要学习befor编程聊天?
- 3. 我需要学习哪些编码语言才能制作构件构件?
- 4. 哪些算法涉及深度学习?
- 5. 要为iPhoneOS编写仿真器需要哪些资源?
- 6. 哪里学习android编程?
- 7. 学习x86汇编语言。需要一些说明
- 8. 我在哪里可以学习编写词法分析器的基础知识?
- 9. 我要去哪里学习编写用于Exchange集成的原始MAPI命令?
- 10. 我是否需要学习更多的编程语言?
- 11. 我是否需要学习React才能在React Native中编写代码?
- 12. 我想学习Win32编程
- 13. 套接字编程学习
- 14. 在编写代码编辑器时需要一些建议
- 15. 学习动画设计需要哪些语言?
- 16. 感知器学习算法
- 17. 机器学习算法
- 18. 什么是一些很好的机器学习编程练习?
- 19. 哪些编程语言需要IDE?
- 20. 在哪个文件我需要编写代码为Symfony2的
- 21. 我可以在哪里学习生物力学算法?
- 22. 我在哪里可以学习关于C++编译器的“我需要知道的内容”?
- 23. 我想制作浏览器插件/扩展,我需要学习哪种编程语言?
- 24. 学习JAVA编程 - 从哪里开始......?
- 25. 组织学校工作区/编写Makefile
- 26. 编写firefox或chrome扩展需要哪些技能? (如Adblock)
- 27. 哪些是学习WP7编程的好书?
- 28. ffmpeg支持哪些纵横比?
- 29. 我需要学习哪些主题以创建Web应用程序?
- 30. 如何学习编写项目规格?
相关的解决:[算法生成一个纵横](HTTP://计算器。 com/questions/943113/algorithm-to-generate-a-crossword) – 2010-08-16 12:46:48
也检查这篇文章:[与 检查点搜索的实际字典生成](http://www.iadis.net/dl/final_uploads/200501C039.pdf ) – 2010-08-16 12:57:12