C語言重構 207 課程表

2021-10-14 10:41:55 字數 1200 閱讀 1387

所有題目源**:

題目

你這個學期必須選修 numcourse 門課程,記為 0 到 numcourse-

1 。在選修某些課程之前需要一些先修課程。 例如,想要學習課程 0 ,你需要先完成課程 1 ,我們用乙個匹配來表示他們:[0,

1]給定課程總量以及它們的先決條件,請你判斷是否可能完成所有課程的學習?

示例 1

:輸入:2,

[[1,

0]] 輸出:

true

解釋: 總共有 2 門課程。學習課程 1 之前,你需要完成課程 0。所以這是可能的。

示例 2

:輸入:2,

[[1,

0],[

0,1]

]輸出:

false

解釋: 總共有 2 門課程。學習課程 1 之前,你需要先完成​課程 0;並且學習課程 0 之前,你還應先完成課程 1。這是不可能的。

輸入的先決條件是由 邊緣列表 表示的圖形,而不是 鄰接矩陣 。詳情請參見圖的表示法。

你可以假定輸入的先決條件中沒有重複的邊。

1<= numcourses <=10^

5

方案:
class

solution

//執行拓撲演算法

int count = numcourses;

int jud =0;

while

(count >1)

tmp[i]--;

count--

;break;}

}if(jud ==0)

return

false;}

return

true;}

};

class

solution

//構造廣度優先佇列

for(

int i =

0; i < numcourses; i++)}

//執行拓撲演算法

int index =0;

//廣度優先演算法

while

(index < que.

size()

)}index++;}

return index == numcourses ?

true

:false;}

};

複雜度計算 雜記

題207 課程表

你這個學期必須選修 numcourse 門課程,記為 0 到 numcourse 1 在選修某些課程之前需要一些先修課程。例如,想要學習課程 0 你需要先完成課程 1 我們用乙個匹配來表示他們 0,1 給定課程總量以及它們的先決條件,請你判斷是否可能完成所有課程的學習?統計課程安排圖中每個節點的入度...

LeetCode題解 207 課程表

現在你總共有 n 門課需要選,記為 0 到 n 1。在選修某些課程之前需要一些先修課程。例如,想要學習課程 0 你需要先完成課程 1 我們用乙個匹配來表示他們 0,1 給定課程總量以及它們的先決條件,判斷是否可能完成所有課程的學習?示例 1 輸入 2,1,0 輸出 true 解釋 總共有 2 門課程...

LeetCode 拓撲排序 207 課程表

難度中等 你這個學期必須選修 numcourse 門課程,記為 0 到 numcourse 1 在選修某些課程之前需要一些先修課程。例如,想要學習課程 0 你需要先完成課程 1 我們用乙個匹配來表示他們 0,1 給定課程總量以及它們的先決條件,請你判斷是否可能完成所有課程的學習?示例1 輸入 2,1...