首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数独游戏的面向对象设计

数独游戏的面向对象设计
EN

Stack Overflow用户
提问于 2013-01-30 16:55:07
回答 1查看 1.9K关注 0票数 3

我正在尝试设计一个面向对象的数独益智游戏。

一方面,在具有在每次插入之后将被激活验证函数的矩阵中表示似乎很便宜

另一方面,用“块”来表示电路板可能更方便:每个单元将被分配给包含它的三个块-列,行,正方形。这里的验证函数将根据块类(列/行/方)使用多态性而不同地实现,当您插入时,数字在属于该单元的每个块上被激活3次。这种方式看起来更“面向对象”,但从内存的角度来看,它非常昂贵。

你认为哪种方法更好?有没有更好的方式既面向对象又便宜呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-30 17:03:31

如果你想做一个更通用的数独解算器(还有其他形式),你可以使用:

单元格

  • 在屏幕上有一个位置
  • 可以包含属于有限字母表的符号或为空。
  • 属于一个或多个组。
  • 某些单元格具有固定值(它们不能在将要更改单元格时为changed).
  • Each,新值必须在所有组中都有效。

通用组

  • 包含多个单元格,不超过字母表中的符号数。
  • 泛型组具有IsValid方法。

正常数独组

  • 如果所有非空单元格包含不同的值,则IsValid方法返回true。

其他数独组

  • (您可以定义自己的IsValid函数)。

注释甚至可以混合不同的组类型。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14600014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档