摘要:
问题 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 // Definition for a binary tree node. struct TreeNode { int val; TreeNo 阅读全文
摘要:
问题 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 // Definition for a binary tree node. struct TreeNode { int val; TreeNo 阅读全文
摘要:
问题 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。 示例 输入: pushed = [1,2,3,4,5], popped = [4,5,3,2,1] 输出: true 解释: 我们可以按以下顺序执行: push(1), push 阅读全文
摘要:
问题 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。 解答 class MinStack { public: void push(int x) { s.push(x); if (s_min.empty( 阅读全文
摘要:
问题 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。 示例 输入: matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出: [1,2,3,6,9,8,7,4,5] 解答 class Solution { public: vector<int> spiralOrd 阅读全文