用java实现如下填字游戏:
图片中的方格用二维数组表示吗?是不是要先在后台生成一些成语或者单词呀,然后再根据生成的这些成语或单词在前台生成方格呀?这些方格的形状要怎么形成?大家讨论下呀,给点思路!好的思路有加分哦!!

解决方案 »

  1.   

    我倒是觉得从词库里找出两个邻接的词是难点。其他的都easy。
      

  2.   


    难道真的要对每个字做sql么? 还有其他方法么?另:解决这一步后,最终遍历到页面的结构我想链表比较好吧。欢迎拍砖。
      

  3.   

    觉得easy的部分,大虾不妨说下思路!!
      

  4.   

    先建好词库
    每个词条可以放入的位置
    以每个词条中的字建各个模块
    最后就可以把问题转化为全覆盖问题
    转化成功后就比较简单了
    另外解决全覆盖用 DLX 比较好
      

  5.   

    全覆盖、DLX好高深的东东哦!
      

  6.   

    首先得有词库
    然后个人感觉对于具体的游戏图,
    这个问题才有讨论的价值,要不然搜索条件,分支过多
    无法在短时间内算出结果。
    有了词库以后,对这些词库中的词进行预处理是必然的
    如何处理我还没有想到好的数据结构
    至少应该类似于hash或图的邻接表表示
    以单个汉字以及其词语中的第几位为这个汉字为键,
    值为一个链表,记录了符合这个条件的所有词语
    对于楼主帖中给出的图来说,
    从一开始,
    先找出所有符合条件的词语
    然后从每个词语开始,进行深度优先搜索
    假设选中的词语是 紫电清霜
    从这个图可以看出,搜索是有分支的,并且各个分支相互不影响
    那么第一个分支就是紫在第一个字的三字词语,并且不再继续,因为后面没有接1的词语
    第二个分支是清在第一位的四字词语,依次类推,
    直到搜索完所有的词库,
    最后根据互不影响的分支搜索结果,进行所有组合,得出所有符合条件的题解
    可供参考