摘要: 问题:蛇形矩阵分析:设置变量dir,0123分别代表方向右下左上class Solution {public: int num[300][300]; void dfs(int x,int y,int k,int n,int dir) { num[x][y]=k; ... 阅读全文
posted @ 2014-08-06 19:46 calmound 阅读(680) 评论(2) 推荐(0) 编辑
摘要: 问题:从左上角到右下角的最小路径和class Solution {public: int num[300][300]; int dfs(int x,int y,vector >&grid) { if(x==grid.size()-1 && y==grid[0].siz... 阅读全文
posted @ 2014-08-06 19:41 calmound 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 问题:矩阵顺时针旋转90度class Solution {public: bool dfs(vector > &matrix,int target,int n) { if(n==matrix.size()) return false; if(matrix[n]... 阅读全文
posted @ 2014-08-06 19:40 calmound 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 问题:数组模拟整数加1class Solution {public: vector plusOne(vector &digits) { int i,k=0; int a[100]; for(i=digits.size()-1;i>=0;i--) ... 阅读全文
posted @ 2014-08-06 19:40 calmound 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 问题:全排列class Solution {public: void dfs(vector &num,vector &vec2,vector >&vec1,int step,int vis[]) { if(step==num.size()) { ... 阅读全文
posted @ 2014-08-06 19:39 calmound 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 问题:二维数组中是否存在一个数class Solution {public: bool dfs(vector > &matrix,int target,int n) { if(n==matrix.size()) return false; if(matrix[... 阅读全文
posted @ 2014-08-06 18:00 calmound 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 问题:输出二叉树的每一行的结点,从叶子到根/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(i... 阅读全文
posted @ 2014-08-06 17:57 calmound 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 问题:从上到下打印二叉树的每一行分析:先搜出二叉树的高度,然后遍历高度,每次搜索一个高度class Solution {public: int dfs(TreeNode *root) { if(root==NULL) return 0; if(root->le... 阅读全文
posted @ 2014-08-06 17:56 calmound 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 问题:找出某个元素的位置朴素的暴力方法class Solution {public: int search(int A[], int n, int target) { int i; for(i=0;i<n;i++) { if(A[... 阅读全文
posted @ 2014-08-06 17:34 calmound 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 问题:输出杨辉三角的第n行class Solution {public: vector getRow(int rowIndex) { vector vec; int a[100][100]; a[0][0]=1; int j,i; ... 阅读全文
posted @ 2014-08-06 17:30 calmound 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 问题:删除距离末尾n个距离的结点分析:先找出距离末尾n个距离的结点其距离开始的距离多少,然后再删除/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ... 阅读全文
posted @ 2014-08-06 17:29 calmound 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 问题:最后一个单词的长度分析,注意s=" a b "这种情况,从后遍历单词,遇到空格退出class Solution {public: int lengthOfLastWord(const char *s) { int len=strlen(s); int sum=... 阅读全文
posted @ 2014-08-06 17:27 calmound 阅读(1960) 评论(1) 推荐(0) 编辑
摘要: 问题:消除数组中重复次数超过三次的多余的数分析:若ai-1==ai-2若ai也相等,则清楚aiclass Solution {public: int removeDuplicates(int A[], int n) { int i,j; for(i=2;i<n;i+... 阅读全文
posted @ 2014-08-06 17:26 calmound 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 问题:根节点到叶子结点的所有权值和分析:从根节点遍历,若遍历到叶子结点,则sum+其路径的所有权值和/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * Tree... 阅读全文
posted @ 2014-08-06 17:25 calmound 阅读(1733) 评论(0) 推荐(0) 编辑
摘要: 问题:The brackets must close in the correct order,"()"and"()[]{}"are all valid but"(]"and"([)]"are not.,判断符合条件的符号([])也符合分析:遇到左边符号进栈,右边符号就将栈顶出栈,若和当前遍历的符号... 阅读全文
posted @ 2014-08-06 17:23 calmound 阅读(191) 评论(0) 推荐(0) 编辑