def verticalOrder(self, root):
        """
        O(N)
        :type root: TreeNode
        :rtype: List[List[int]]
        """
        l = self.leftmost(root, 0)
        r = self.rightmost(root, 0)

        ret = [[] for _ in xrange(r-l-1)]
        self.bfs(root, -l-1, ret)
        return ret
dataset/ETHPy150Open algorhythms/LeetCode/314 Binary Tree Vertical Order Traversal.py/Solution.verticalOrder/original