深度搜索----深度搜索解决数独问题

1.深度优先搜索(DFS)

从某个状态开始,不断的转移状态直到无法转移,然后回退到前一步的状态,继续转移到其他状态,如此不断重复,直到找到最终的解。

2.数独问题

给定数列a,判断是否可以从中选出若干个数,使他们的和恰好为k。

输入:

n=4

a={1,2,4,7}

k=13

输出:

Yes

3.数独问题分析与实现

由于数列中每个数存在加或者不加两种状态,那么可绘制二叉状态树如下:

算法实现:

public class AlgorithmCenter200713{private int k=11;private int n=4;private int[] a= {1,2,4,7};/// <summary>/// 数独问题/// 采用深度搜索方法解决数独问题/// 数独问题:给定一个数列和一个数k,能不能从数列中找出几个数使其和等于k/// [1,2,4,7]   k=13 => 2+4+7=13/// </summary>/// <returns></returns>public bool SolutionSudokuProblemByDfs(int i,int sum){if (i == n-1)return sum+a[i] == k;//剪枝if (sum > k)return false;//当前数加,进入下一个数(走左边分支)if (SolutionSudokuProblemByDfs(i + 1, sum+a[i]))return true;//当前数不加,进入下一个数(走右边分支)if (SolutionSudokuProblemByDfs(i + 1, sum))return true;return false;}}

深度搜索----深度搜索解决数独问题相关推荐

  1. POJ2676,HDU4069解决数独的两种实现:DFS、DLX

    搜索实现:解决数独有两种思考策略,一种是枚举当前格能填的数字的种数,这里有一优化策略就是先搜索能填入种数小的格子:另一种是考虑处理某一行(列.宫)时,对于某一个没用过的数字,若该行(列.宫)只有一个可 ...

  2. 深度搜索—-深度搜索解决矩阵搜索问题(水洼数计算)

    深度搜索--深度搜索解决矩阵搜索问题(水洼数计算) 一.题目 有一个大小为N*M的园子,雨后积起了水.八连通的计税被认为是连接在一起的.请求出园子里总共有多少水洼? (八连通指的是下图中相对w的*的部 ...

  3. 论文合集 | 李飞飞新论文:深度学习代码搜索综述;Adobe用GAN生成动画(附地址)...

    来源:机器之心 本文约3200字,建议阅读7分钟. 本文介绍了李飞飞新论文,深度学习代码搜索综述,Adobe用GAN生成动画. 本周有李飞飞.朱玉可等的图像因果推理和吴恩达等的 NGBoost 新论文 ...

  4. 深度学习在搜索业务中的探索与实践

    本文根据美团高级技术专家翟艺涛在2018 QCon全球软件开发大会上的演讲内容整理而成,内容有修改. 引言 2018年12月31日,美团酒店单日入住间夜突破200万,再次创下行业的新纪录,而酒店搜索在 ...

  5. 6-机器学习启蒙- 深度学习: 图像搜索

    6- 深度学习: 图像搜索 github: https://github.com/mtianyan/graphLabStartedML 深度学习: 图像搜索 基于图片的相似度来选购商品 可视化商品推荐 ...

  6. 深度学习在搜索业务中的探索与实践 1

    本文根据美团高级技术专家翟艺涛在2018 QCon全球软件开发大会上的演讲内容整理而成,内容有修改. 引言 2018年12月31日,美团酒店单日入住间夜突破200万,再次创下行业的新纪录,而酒店搜索在 ...

  7. 美团高级技术专家艺涛:深度学习在搜索业务中的探索与实践

    数据猿导读 本文根据美团高级技术专家翟艺涛在2018 QCon全球软件开发大会上的演讲内容整理修改而成.文章分享了深度学习在酒店搜索NLP中的应用,并重点介绍了深度学习排序模型在美团酒店搜索的演进路线 ...

  8. 新论文推荐:Auto-Keras:自动搜索深度学习模型的网络架构和超参数

    Auto-Keras 是一个开源的自动机器学习库,由美国德州农工大学(Texas A&M University)助理教授胡侠和他的两名博士生:金海峰.Qingquan Song提出.Auto- ...

  9. 深度学习在搜索和推荐领域的应用

    /* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author: 张俊林 深度学习在搜索和推荐领域的应用 (想更系统地学习深度学习知识?请参考:深度学习枕边书) 大纲: •深度 ...

最新文章

  1. DSP 的双缓冲串口程序设计
  2. Spring原理之代理与动态代理模式总结(四)
  3. Visual Studio 2013运行的结果一闪而过
  4. 携手伙伴谋增长 同心协力齐飞飏
  5. c++11 std::bind与std::function
  6. win10 安装flutter记录
  7. [Matlab] 单次测量的中误差、算数平均值的中误差、加权求最或然值、函数拟合、莫迪图的计算实例
  8. 计算机保研面试英文,计算机保研面试英文自我介绍范文
  9. 合伙的债务应如何承担
  10. python正确的赋值语句是_python中赋值的方法
  11. 机器学习:kNN算法(一)—— 原理与代码实现(不调用库)
  12. 二、ZFNet可视化卷积神经网络——可解释性机器学习(DataWhale组队学习)
  13. TortoiseSVN patch 创建并应用补丁
  14. Discuz 会员头像调用方法之discuz_uc_avatar函数
  15. 原神改文件换服务器,原神B服怎么转成官服
  16. 零基础自学平面设计需要学些什么?
  17. 浅谈安卓apk安装过程中的设计模式
  18. 图表嵌入到数据表格下方_如何在excel图表下方添加数据表 如何在excel图表中显示数值...
  19. 绩效沟通季的瓜不好吃,小心下一个吃瓜的是你?
  20. 谷歌趋势 Google Trends 实战使用技巧

热门文章

  1. python 画老虎
  2. 拉丁超立方抽样 Latin hypercube sampling,java 代码
  3. 性能优化--启动优化(网易云音乐启动方案)
  4. linux ubuntu系统 ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)数据
  5. html组态插件_组态 web组态 组态插件 编辑器 工业组态 物联网组态 组态编辑器...
  6. windows系统进程System ntoskrnl.exe pid 4占用8080端口
  7. arccatalog点要素显示不完_shp文件转为dwg之后在arcgis下打开属性表有高程信息但在cad里面打开为何没高程 - 地学 - 小木虫 - 学术 科研 互动社区...
  8. 批量抠图,只需要这几行python代码!
  9. Q3营收利润双降,新作将成Take-Two逆势大爆发的动力?
  10. iphone8 android传文件,如何从iPhone或Android将数据传输到新的iPhone 8