Java简单实现农夫过河问题示例

网友投稿 482 2023-03-08


Java简单实现农夫过河问题示例

本文实例讲述了java简单实现农夫过河问题。分享给大家供大家参考,具体如下:

一、问题描述

老伯伯要带鱼、狗、猫过河到对岸.,有一条船,只能坐一个人,老伯每次只能带一样动物过河,当老伯不在的时侯狗会咬猫,猫会吃鱼.,请问怎么顺序过河呢?

二、实现代码

package demo;

import java.util.ArrayList;

import java.util.List;

public class CrossRiver {

List listThis = new ArrayList();

List listThat = new ArrayList();

/*boolean thisFlag = true;

boolean thatFlag = false;

*/

public CrossRiver() {

tcsNXc listThis.add("dog");

listThis.add("fish");

listThis.add("cat");

// listThis.add("people");

}

public boolean isSafe(@SuppressWarnings("rawtypes") Listhttp:// list){

if(list.contains("fish")&&list.contains("cat")||list.contains("cat")&&list.contains("dog")){

return false;

}else{

return true;

}

}

public void thisTothat(){

String str = listThis.get(0);

listThis.remove(str);

if(this.isSafe(listThis)){

System.out.println("农夫带着 " + str + " 从此岸到彼岸");

System.out.println("此岸" + listThis + "\b" + "彼岸" + listThat);

System.out.println();

tcsNXc listThat.add(str);

thatToThis();

}else{

listThis.add(str);

thisTothat();

}

}

public void thatToThis(){

if(listThis.isEmpty()){

System.out.println("此岸" + listThis + "\b" + "彼岸" + listThat);

return;

}

if(isSafe(listThat)){

System.out.println("农夫从彼岸到此岸");

System.out.println("此岸" + listThis + "\b" + "彼岸" + listThat);

System.out.println();

thisTothat();

}else{

String str = listThat.get(0);

listThat.remove(0);

if(isSafe(listThat)){

System.out.println("农夫带着 " + str + " 从彼岸到此岸");

System.out.println("此岸" + listThis + "\b" + "彼岸" + listThat);

System.out.println();

listThis.add(str);

thisTothat();

}else{

listThat.add(sttcsNXcr);

thatToThis();

}

}

}

public static void main(String[] args){

StcsNXcystem.out.println("我们测试结果:");

System.out.println();

new CrossRiver().thisTothat();

}

}

运行结果:

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微服务接口管理平台(微服务 接口安全)
下一篇:手机短信开发接口(短信api接口教程)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~