你需要去上n門九章的課才能獲得offer,這些課被標號為 0 到 n-1 。
有一些課程需要「前置課程」,比如如果你要上課程0,你需要先學課程1,我們用乙個匹配來表示他們: [0,1]
給你課程的總數量和一些前置課程的需求,返回你為了學完所有課程所安排的學習順序。
可能會有多個正確的順序,你只要返回一種就可以了。如果不可能完成所有課程,返回乙個空陣列。
樣例:
給定 n = 2, prerequisites = [[1,0]]
返回 [0,1]
給定 n = 4, prerequisites = [1,0],[2,0],[3,1],[3,2]]
返回 [0,1,2,3] or [0,2,1,3]
思路:
拓撲排序。
#ifndef c616_h
#define c616_h
#include
#include
#include
#include
using
namespace
std;
class solution
//將入度為0的節點入隊
for (int i = 0; i < numcourses; ++i)
//將隊頭節點插入到res的開始位置
while (!que.empty())
}if (res.size() < numcourses)
res.clear();
return res;
}};#endif
616 安排課程
2017.9.11 超時超時超時,去死吧 public class solution 建立所有的後序鍊錶。indegree計算所有的節點的入度。int indegree new int numcourses for int x prerequisites 找到乙個入度為0的節點,開始遍歷。int r...
SJTU安排課程表
description 學生需要修讀完所有的課程才能畢業,這些課程之間有先導關係 比如要修讀資料結構,必須先修讀程式設計思想方法 假設任意一門課程可以在任何乙個學期給滿足條件的學生選修,且學生每個學期可以選修的課程數不限。先給出一些課程與課程之間的關係,求能夠修完所有課程的最少學期數。為簡化題目,約...
CAS KG 課程安排
課程目標 教學安排 詳情請見部落格 cas kg 課程安排 1.1 課程簡介 1.2 知識圖譜概述 1.3 知識圖譜與深度學習 2.1 機器學習基礎 2.2 深度學習基礎 2.3 典型深度學習模型 一 2.4 典型深度學習模型 二 3.1 典型圖演算法 3.2 圖匹配演算法 3.3 面向圖結構的隨機...