interface Panter { } class Pos { int x, int y, void paint(Panter p); boolean isPainted(); } paint(Set<Pos> borders, Pos start, Panter panter) { if (borders.contains(start)) return; if (start.isPainted()) return; start.paint(panter); paint(borders, start.up(), panter); paint(borders, start.down(), panter); paint(borders, start.left(), panter); paint(borders, start.right(), panter); }
Other other like BFS tree.
原文:http://7371901.blog.51cto.com/7361901/1585341