欢迎来到天天文库
浏览记录
ID:21827141
大小:59.41 KB
页数:7页
时间:2018-10-25
《宽度优先解决八数码问题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、向己写的,没什么经验,可能有点乱,总共写了两个类,这是第一个第一个类packageMyBashuma;importjavci.util.ArrayList;importjava.util.List;importjava.util.Scanner;publicclassBaShuMa{publicstaticvoidmain(String[]args){BaShuMab=newBaShuMa();Listnodes=newArrayList();//得到初始状态和最终状态System.out.println('•输入初始状态:n
2、);Scannersc=newScanner(System.in);Stringx=sc.nextLine();int[][]n=b.change(x);System.out.println(n输出最终状态:n);Scannerscl=newScanner(System.in);Stringx1=scl.nextLine();int[][]nl=b.change(xl);Nodenode=newNode();node.setNode(n);node.setFather(-l);nodes.add(node);inti=0;booleanzhaodao
3、=false;while(!zhaodao){if(b.compare(nodes.get(i).getNode(),nl)))zhaodao=true;System.ouLprindn("移动步骤:n);NodeendNode=nodes.get(i);Listresult=newArrayList();result.add(endNode);intt=endNode.getFather();while(t>-l){Nodeno=nodes.get(t);result.add(no);t=no.getFatherQ;}for
4、(ints=result.size()-1;s>=0;s-){b.print(result.get(s).getNode());}}el$e{Nodenodel=nodes.get(i);Nodenoder=b.copy(nodel);noder.rMove(noder);noder.setFather(i);booleanbl=false;for(intq=0;q5、bl=true;}}if(bl){nodes.add(noder);}Nodenodel=b.copy(nodel);nodel.lMove(nodel);nodel.setFather(i);booleanb2=false;for(intq=0;q6、deu.uMove(nodeu);nodeu.setFather(i);booleanb3=false;for(intq=0;q7、s.size();q++){if(b.compare(nodes.get(q).getNode(),noded.getNode())){b4=false;break;}else{b4=true;i++;}i++;}nodes.add(noded);publicintULJchange(Stringstr){int[][]a=newint[3][3];inti=0;for(inty=0;y<3;y++){a[x][y]=Integer.parseInt(String.valueOf(str.charAt(i)));returna;publicvoidp8、rint(int[][]a){for(intx=0;x<3;x++){for(inty=O;y<3;y++)
5、bl=true;}}if(bl){nodes.add(noder);}Nodenodel=b.copy(nodel);nodel.lMove(nodel);nodel.setFather(i);booleanb2=false;for(intq=0;q6、deu.uMove(nodeu);nodeu.setFather(i);booleanb3=false;for(intq=0;q7、s.size();q++){if(b.compare(nodes.get(q).getNode(),noded.getNode())){b4=false;break;}else{b4=true;i++;}i++;}nodes.add(noded);publicintULJchange(Stringstr){int[][]a=newint[3][3];inti=0;for(inty=0;y<3;y++){a[x][y]=Integer.parseInt(String.valueOf(str.charAt(i)));returna;publicvoidp8、rint(int[][]a){for(intx=0;x<3;x++){for(inty=O;y<3;y++)
6、deu.uMove(nodeu);nodeu.setFather(i);booleanb3=false;for(intq=0;q7、s.size();q++){if(b.compare(nodes.get(q).getNode(),noded.getNode())){b4=false;break;}else{b4=true;i++;}i++;}nodes.add(noded);publicintULJchange(Stringstr){int[][]a=newint[3][3];inti=0;for(inty=0;y<3;y++){a[x][y]=Integer.parseInt(String.valueOf(str.charAt(i)));returna;publicvoidp8、rint(int[][]a){for(intx=0;x<3;x++){for(inty=O;y<3;y++)
7、s.size();q++){if(b.compare(nodes.get(q).getNode(),noded.getNode())){b4=false;break;}else{b4=true;i++;}i++;}nodes.add(noded);publicintULJchange(Stringstr){int[][]a=newint[3][3];inti=0;for(inty=0;y<3;y++){a[x][y]=Integer.parseInt(String.valueOf(str.charAt(i)));returna;publicvoidp
8、rint(int[][]a){for(intx=0;x<3;x++){for(inty=O;y<3;y++)
此文档下载收益归作者所有