在一个牧场中,有 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。