在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。 例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。 请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。
区块链毕设网qklbishe.com为您提供问题的解答
在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。
例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。
请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numCows int整型 * @param feedOrders int整型二维数组 * @return bool布尔型 */ public boolean canFeedAllCows (int n, int[][] feedOrders) { // write code here //用队列判断是否成环 Queue<Integer> queue=new LinkedList<>(); //用tree保存牛key和value以便链式查找 TreeMap<Integer, Integer> map = new TreeMap<>(); for (int i = 0; i < feedOrders.length; i++) { map.put(feedOrders[i][0], feedOrders[i][1]); } int cow1 = feedOrders[0][0]; int cow2 = feedOrders[0][1]; queue.add(cow1); queue.add(cow2); while (true) { //如果查找key为null说明无锁 if(map.get(cow2)==null){ break; //不为null就查找下一个 }else{ cow2 = map.get(cow2); } //如果已存在该值说明成环 if(queue.contains(cow2)){ return false; //反之亦然 }else{ queue.add(map.get(cow2)); } } return true; } }
15:46
以上就是关于问题在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。 例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。
请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训
从业7年-专注一级市场
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。 例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。
请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。 例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。
请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。 例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。
请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 在一个牧场中,有 numCows 头牛,编号为 0 到 numCows – 1。牧场主为了方便管理,记录了牛群之间的喂养顺序关系。喂养顺序关系用一个数组 feedOrders 给出,其中 feedOrders[i] = [ai, bi],表示如果要喂养牛 ai,则必须先喂养牛 bi。 例如,喂养顺序对 [0, 1] 表示:想要喂养牛 0,你需要先喂养牛 1。 请你判断是否可以按照喂养顺序关系完成所有牛的喂养?如果可以,返回 true;否则,返回 false。