26classSolution{public: vector<vector<int>>levelOrderBottom(TreeNode* root) {if(!root)returnvector<vector<int>>(); vector<vector<int> > res; queue<TreeNode*> q; q.push(root);while(!q.empty()) { vector<int> level;intsize = q.size();for(inti =0; i < size; ++i) { TreeNode*...
俯视角度下观察结果,我想到用root作为基准,令其序号为0,相应的,左节点在根节点基础上序号减一,而右节点加一。 用一个队列,自上而下逐层遍历。因为观察角度是从上往下,上层的节点会遮住同一列的下层所有节点。一边往下,一遍往左右两侧探索,遇到水平方向更远的节点都要保存到结果中。 1 2 3 4 5 6 7 8 9 ...
traversal manipulation algorithms BFS(breadth-first search) and DFS(depth-first search) (video) BFS notes: level order (BFS, using queue) time complexity: O(n) space complexity: best: O(1), worst: O(n/2)=O(n) DFS notes: time complexity: O(n) space complexity: best: O(log n...