数据结构农夫过河(C++)
设计目的:
1.掌握队列的建立及基本操作。
深入了解队列的特性,以便在解决实际问题中灵活运用它们。
4.加深队列的理解和认识。
设计内容:
有一个农夫带一条狼、一只羊和一棵白菜过河.如果没有农夫看管,则狼
要吃羊,羊要吃白菜.但是船很小,只够农夫带一样东西过河.问农夫该如何解此难题?
设计要求:
1、编程实现农夫过河的过程;
2、执行结果中要体现过河的先后顺序
111数据结构农夫过河
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
8条回答 默认 最新
流比 2022-12-29 10:20关注// 定义队列 Queue<String> queue = new Queue<String>(); // 将需要过河的对象加入队列 queue.enqueue("农夫"); queue.enqueue("狼"); queue.enqueue("羊"); queue.enqueue("白菜"); // 循环处理队列中的对象 while (!queue.isEmpty()) { // 取出队列中的第一个对象 String obj = queue.dequeue(); // 过河 System.out.println(obj + " 过河"); // 如果农夫过河了,就将下一个需要过河的对象加入队列 if (obj.equals("农夫")) { if (!queue.isEmpty()) { queue.enqueue(queue.dequeue()); } } }解决 无用评论 打赏 举报