题
我试着得到更多熟悉的问题,需要图表要解决的(都是最好的解决的图表).
如果有人有一个老ACM编程的竞争问题,利用图表,或有另一个问题,他们发现特别是有启发性的,因为他们出来我将不胜感激。我想熟悉的图表、标识图的类型问题很容易并且能够利用基本的曲线图穿越algorithmns.
任何人都有一个甜蜜的问题,他们可以送我的方式?
解决方案
我找到了这本书可以 非常 有用的(亚马逊的链接):编程的挑战
它不仅给一个相当深入的解释性图表,树木、基本的数据结构,它提供了极少数的编程的挑战涉及各种类型!本文件更有用到我的教科书!
这里有一些图表的问题:
涉及的问题 图穿越:
- Bicoloring:pg203
- 打轮胎:pg204
- 旅游指南:pg206
- 削减迷宫:pg208
- 编辑的步骤梯子:pg210
- 塔的立方体:pg211
- 从黄昏到黎明:pg213
- 河内塔烦恼(!) :pg215
涉及的问题 图算法 (Dijkstra,Min生成树等):
- 雀斑:pg231
- 该项链:pg231
- 消防站:pg234
- 铁路:pg235
- 战争:pg237
- 盛大的晚餐:pg241
其他提示
您应该熟悉 Konigsberg Bridge问题。您还应该熟悉经常出现的数据结构的类型在图论问题中。
图实际上可以用来建模 几乎 任何问题。 Topcoder.com 马拉松比赛,往往借自己的曲线图基于解决方案。
- 的 ProcessorScheduling 问题可以解决与图表。
- 的 GraphBuilder 问题。
- 的 距离 问题。
- 的 制图师 问题(加权k色的问题,这是一个典型的计算机科学问题)。
你可能结账其中的一些问题和有更多的他们来自哪里。
您没有说出您正在使用的语言(考虑使用)。如果可以的话,我建议使用Lisp或Python。它们对于简单的图形操作都很有用。如果你想要真正的幻想,你可能想要使用PyGame创建一个漂亮的输出。
至于问题,看看一个简单的程序并将其转换为图形。提示,每个令牌都是一个节点。假设您有一些循环和方程式,那么您可以遍历图形并识别可以在循环外移动的内容。可以重新排列等式以使其更“有效”。
我对这个问题的理由是,通过查看编译器优化阶段内可能发生的那些进程,它将帮助你作为程序员。
顺便说一句,如果你给出上述内容,请看看 Plex ,它将为您节省大量的解析器时间。http://codekata.pragprog.com/2007/01/kata_nineteen_w.html
提示:DAWG是一种非常好的方法。