1、拼图涵盖了几乎所有可能的思维模式
 ·基本逻辑
 联系和比较,将独立小块和整幅图做多次比较,确定具体位置。
 ·分类思考
 可以按照三种分类来拆解问题,边缘区域,背·面符号类型,局部整体图案
 ·精准思考和模糊思考
 每一个独立小块的具体位置需要和上下左右精确匹配,图案和形状都不能错。
 在搜索阶段则可以按照背面符号类型
 ·局部思考和整体思考
 局部组成了整体,局部最小单位是独立小块
 ·陶冶情操
 拼图一般是自己喜欢的图案,可以陶冶情操
2、如果用代码模拟拼图的过程
 2.1、独立小块的特性和模型
 ·图案即像素加颜色
 每一个独立小块由若干有颜色像素组成。
 像素可以是上下坐右中五个部分组成,颜色用字母或者数字表示,每个部分可以包含多个像素以模拟不同的图案
 ·边界类型
 像素的五个部门增加标志,即是否为空,为空即表示那一侧为边界
 ·区分方向
 独立小块五个部分为上下左右中,有方向标志
 ·小块的唯一性:精确比较的实现
 可以提供一个hash算法,将独立小块五个部门进行hash运算,比如使用md5(序列化对象)这种简单粗暴的方式
 ·背面符号
 独立小块增加一个背面符号属性
 ·像素比重:模糊比较的实现
 当一个独立小块某像素比重较高,即某字母或者数字较多时,这个独立小块就可以简化为单一色
 当局部(局部可大可小)多个小块某像素比重较高,可以把某个区域简化为单一色
 拓展下可以包含多个单一色
 独立小块单一色和局部单一色比较实现模糊比较的能力
 2.2、拼图整体的模型
 ·位置关系
 基于独立小块二维数组
 ·局部模糊单一色
 按照,4块,9块,16块合并多个独立小块为单元小块,提供局部单一色二维数组,所以我们的拼图会有多张
 这块也可以按照单一色拓展的模式,比如单一色比重达到80%则扩大单一色的范围
 ·标记是否找到位置
 增加一个符号表示已找到位置,独立小块和独立小块二维数组都需要
3、比较的过程
 ·模糊比较
 使用背景符号,局部单一色,是否边缘来确定尽可能小的范围
·精确比较
 按照独立小块hash值比较,然后再进行独立小块hash
·独立小块的局部比较
 可以额外提供提供上下左右中5个hash
·同步进行比较
 一起搞,这是计算机的优势
4、其它想法
 ·计算机没有人类的视觉,需要转化为符号
 ·人眼的计算能力确实强大,尤其在模糊单一色这一块,用代码的话这块会很复杂
 ·从算法角度看,最暴力的就是精确hash,同时也最低效










