diff --git a/courseSchedule.cpp b/courseSchedule.cpp new file mode 100644 index 00000000..172b965e --- /dev/null +++ b/courseSchedule.cpp @@ -0,0 +1,38 @@ +class Solution { +public: + bool canFinish(int numCourses, vector>& prerequisites) { + vector inorder(numCourses, 0); + unordered_map> um; + + for (vector courses : prerequisites) { + um[courses[1]].push_back(courses[0]); + inorder[courses[0]]++; + } + + queue q; + + for (int i=0;i> levelOrder(TreeNode* root) { + queue q; + if (root) q.push(root); + + vector> answer; + + while (!q.empty()) { + int size = q.size(); + vector temp; + while (size--) { + TreeNode *node = q.front(); + q.pop(); + + temp.push_back(node->val); + + if (node->left) q.push(node->left); + if (node->right) q.push(node->right); + } + answer.push_back(temp); + } + return answer; + } +};