蓝桥-算法-万能搜索
2017-02-03 10:40
260 查看
“`
package com.jkxy.MagicSearch;
public class EqualSearch {
public static int total=0;
public static int[] a=new int[9];
public static int[] flag={0,0,0,0,0,0,0,0,0};
public static void main(String[] args) {
dfs(0);
System.out.println(total/2);
}
public static void dfs(int step){
int i;
if(step==9){
if(a[0]*100+a[1]*10+a[2]+a[3]*100+a[4]*10+a[5]==a[6]*100+a[7]*10+a[8]){
total++;
for(i=0;i<9;i++){
System.out.print(a[i]);
}
System.out.println(“/”);
}
return;
}
for(i=1;i<10;i++){
if(flag[i-1]==0){
a[step]=i;
flag[i-1]=1;
dfs(step+1);
flag[i-1]=0;
}
}
return;
}
}
/*当下如何做,下一步如何做。
*首先main:调用搜索函数(从第一盒子开始出发),坐等搜索函数跑完传过来的total,输出
*然后写dfs(),判断边界完?完则输出数组。未完则循环尝试,判断i是否可用,可用则放进step中,
*继续下一步,把i收回来。
*/
void dfs(int step){
判断边界
尝试可能for(i=1;i<=n;i++){
放i;
继续下一步 dfs(step+1);
把i收回来;
}
}
package com.jkxy.MagicSearch;
public class EqualSearch {
public static int total=0;
public static int[] a=new int[9];
public static int[] flag={0,0,0,0,0,0,0,0,0};
public static void main(String[] args) {
dfs(0);
System.out.println(total/2);
}
public static void dfs(int step){
int i;
if(step==9){
if(a[0]*100+a[1]*10+a[2]+a[3]*100+a[4]*10+a[5]==a[6]*100+a[7]*10+a[8]){
total++;
for(i=0;i<9;i++){
System.out.print(a[i]);
}
System.out.println(“/”);
}
return;
}
for(i=1;i<10;i++){
if(flag[i-1]==0){
a[step]=i;
flag[i-1]=1;
dfs(step+1);
flag[i-1]=0;
}
}
return;
}
}
/*当下如何做,下一步如何做。
*首先main:调用搜索函数(从第一盒子开始出发),坐等搜索函数跑完传过来的total,输出
*然后写dfs(),判断边界完?完则输出数组。未完则循环尝试,判断i是否可用,可用则放进step中,
*继续下一步,把i收回来。
*/
void dfs(int step){
判断边界
尝试可能for(i=1;i<=n;i++){
放i;
继续下一步 dfs(step+1);
把i收回来;
}
}
相关文章推荐
- 【C++】【啊哈!算法】第四章 万能的搜索
- 《啊哈!算法》第4章 万能的搜索
- 【万能搜索】万能DFS之全排列(一)——普通算法
- 【Python排序搜索基本算法】之深度优先搜索、广度优先搜索、拓扑排序、强联通&Kosaraju算法
- 有关路径搜索的一个算法
- 【算法学习笔记】18.暴力求解法06 隐式图搜索2 八数码问题 未启发
- 用Elasticsearch构建电商搜索平台,一个极有代表性的基础技术架构和算法实践案例
- 通用局部搜索算法之模拟退火[转]
- 算法—12.广度优先搜索
- 一种精确的基于DHT的p2p网络搜索算法与网络拓扑模型
- LBS附近地点搜索算法资料集合
- 字符串搜索匹配算法(一)
- 万能的搜索--之补充(四)
- [搜索]波特词干(Porter Streamming)提取算法详解(1)
- [搜索]波特词干(Porter Streamming)提取算法详解(3)
- AlphaGo背后的搜索算法:蒙特卡罗树搜索 && alphago 代码
- 【算法入门】广度/宽度优先搜索(BFS)
- 作业调度问题深度搜索定界算法
- 淘宝网北京 搜索 算法 java c++ 分布式 测试 等高端职位
- 工程师详述Google的搜索结果排列算法