04 2015 档案
摘要:二叉树的层序遍历思路一:利用队列,将每一层节点放入队列,各层节点之间加入NULL隔开。 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 ...
阅读全文
摘要:如果一个链表有环,求环的起始位置。设置一个快指针每次走两步,一个慢指针每次走一步。若最终能相遇,则有环。如图:设:链表头是X,环的第一个节点是Y,slow和fast第一次的交点是Z。各段的长度分别是a,b,c,如图所示。环的长度是L。第一次相遇时slow走过的距离:a+b,fast走过的距离:a+b...
阅读全文
摘要:二分查找 1 class Solution { 2 public: 3 int findMin(vector &num) { 4 int n = num.size(); 5 if (n == 1) 6 return num[0]; 7 ...
阅读全文
摘要:问题:判断二叉树是否为镜像二叉树分析:递归判断,根节点单独判断,然后递归左结点和右结点,之后每次一起递归左结点的左结点和右结点的右结点比较,左结点的右结点和右结点的左结点比较。 1 /** 2 * Definition for binary tree 3 * struct TreeNode { ...
阅读全文
摘要:主要是对下标的操作。 1 class Solution { 2 public: 3 vector > generateMatrix(int n) { 4 vector > ret(n, vector(n)); 5 6 int i = 0, j...
阅读全文
摘要:题目要求是找到一组数组的全排列思路1:递归,在num中拿出1个数字放在第一个,然后剩下的数字做一个全排列 1 class Solution { 2 public: 3 vector > permute(vector &num) { 4 int n = num.size(); ...
阅读全文