假坏
码龄14年
关注
提问 私信
  • 博客:47,728
    47,728
    总访问量
  • 45
    原创
  • 490,063
    排名
  • 7
    粉丝
  • 0
    铁粉

个人简介:JUST DO IT

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2011-05-29
博客简介:

假坏

博客描述:
挨踢
查看详细资料
个人成就
  • 获得12次点赞
  • 内容获得6次评论
  • 获得27次收藏
创作历程
  • 1篇
    2016年
  • 34篇
    2015年
  • 3篇
    2014年
  • 9篇
    2013年
成就勋章
TA的专栏
  • 理论
    2篇
  • C/C++
    4篇
  • linux
    1篇
  • 简单算法
    4篇
  • 笔试面试
    1篇
  • 计算机网络
    1篇
  • Java网络编程
    1篇
  • LeetCode
    31篇
  • 论文笔记
创作活动更多

开源数据库 KWDB 社区征文大赛,赢取千元创作基金!

提交参赛作品,有机会冲刺至高2000元的创作基金,快来参与吧!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

二维数组的回型遍历

#include#includeusing namespace std;void travel(int **vec,int row, int col,int level,int count){ if (row - 2 * level == 0 || col - 2 * level == 0){ return; } if (row-2*level == 1){ for (int
原创
发布博客 2016.02.20 ·
1916 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

Maximum Product of Word Lengths

class Solution {public: int maxProduct(vector& words) { int n=words.size(); vector dict(n,0); for(int i=0;i<n;++i){ for(char c:words[i]){ dict[
原创
发布博客 2015.12.16 ·
541 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

17 Letter Combinations of a Phone Number

class Solution {public: vector<string> letterCombinations(string digits) { vector<string> ans; if(digits==""){ return ans; } string combination="";
原创
发布博客 2015.12.01 ·
479 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

16 3Sum Closest

class Solution {public: int threeSumClosest(vector<int>& nums, int target) { int n=nums.size(); int closest=nums[0]+nums[1]+nums[2]; sort(nums.begin(),nums.end());
原创
发布博客 2015.12.01 ·
383 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

15 3Sum

class Solution {public: vector<vector<int>> threeSum(vector<int>& nums) { vector<vector<int>> ans; int n=nums.size(); if(n<3){ return ans; } sor
原创
发布博客 2015.12.01 ·
405 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

312 Burst Balloons

动态规划:dp[i][j]表示气球i到气球j的最佳coins 动态转移方程: dp[i][j]=max(dp[i][k-1]+nums[i-1]*nums[k]*nums[j+1]+dp[k+1][j]) k∈[i,j]class Solution {public: int maxCoins(vector<int>& nums) { for(int i=0;i<num
原创
发布博客 2015.12.01 ·
2190 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

98 Validate Binary Search Tree

题意:判断给出的二叉树是不是BST 分析:中序遍历并储存结点的值在一位数组中,如果数组是递增序列则二叉树为BST. 代码:/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeN
原创
发布博客 2015.09.25 ·
373 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

257 Binary Tree Paths

题意:给定二叉树,找出所有根到叶子的路径分析:dfs.代码:/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(
原创
发布博客 2015.09.25 ·
383 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

124 Binary Tree Maximum Path Sum

题意:在一棵二叉树中,找出和最大的一条路径,路径的起点和终点可以为树的任意两个节点。 分析:自底向上更新节点的值,使得节点的值表示以该点为根往下扩展能形成的路径P(注意,不一定是根到节点的路径)的最大和Sum,由于是自底向上更新的,所以更新的同时可以动态更新以二叉树每个节点作为中转节点连接以该节点左右子节点为根已形成的路径的总最大和。 代码:/** * Definition for a bin
原创
发布博客 2015.09.23 ·
662 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

213 House Robber II

题意:在House Robber的基础上做了一点修改,给出的数不是一位数组而是组成了一个环。 分析:方法同House Robber。考虑组成环之后的数,选中第一个数,最后一个数就不能再选了,综合数组nums[0,n-2]和nums[2,n-1]选较大者则为问题答案。 代码:class Solution {public: int rob(vector<int>& nums) {
原创
发布博客 2015.09.23 ·
495 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

198 House Robber

题意:给定非负数的一维数组,从中选出不相邻的一组数,使这组数之和最大。分析:动态规划,设dp[i]表示nums[0,i]所选数组的最大和,状态转移方程为dp[i]=dp[i]=max(dp[i-1],dp[i-2]+nums[i]);代码:class Solution {public: int rob(vector& nums) { int ans=0;
原创
发布博客 2015.09.23 ·
419 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

221 Maximal Square

题意:给出一个只包含0或1的二维矩阵,求矩阵中出现全为1的正方形的面积。 分析:动态规划。设dp[i][j]表示以matrix[i][j]为右下角的正方形的最大边长,转移方程为 代码:class Solution {public: int maximalSquare(vector<vector<char>>& matrix) { int row=ma
原创
发布博客 2015.09.23 ·
390 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

273 Move Zeroes

题意:把一个数组中的0全部移到数组后面,不改变其他数的相对顺序 分析:从头开始遍历,遇到0则把0移到数组最后面,定义两个数分别记录数组前面得到的整数个数a和数组最后的0的个数b,当a+b==n(n为数组长度)时遍历结束。 代码:class Solution {public: void moveZeroes(vector<int>& nums) { int a,b;
原创
发布博客 2015.09.22 ·
422 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

72 Edit Distance

题意:给出两个字符串word1、word2,现有三种操作insert delete replace每次操作只能修改一个字符,求通过这三种操作把word1转变成word2的最少次数。分析:动态规划。定义dp[i][j]表示word1的子串word1[0,i-1]转变成word2[0,j-1]的最小次数,动态转移方程为:                              dp[i][j
原创
发布博客 2015.09.22 ·
376 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

4 Median of Two Sorted Arrays

题意:找出两个已排好序数组(合并之后形成新数组)的中位数,要求复杂度为O(log(m+n)),m,n分别为两数组长度。分析:首先想到的是先把两个数组合并,最暴力的方法就是合并之后再快排一次,复杂度O代码:
原创
发布博客 2015.09.21 ·
350 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

3 Longest Substring Without Repeating Characters

题意:给出一字符串,求不出现重复字母的子串的最大长度,例如:"bbbbb",最长为1;"abcabcab",最长为3。分析:
原创
发布博客 2015.09.20 ·
376 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2 Add Two Numbers

题意:给出两个链表的头结点,将两链表每个节点的数相加,构成新的节点。分析:链表遍历。代码:(写得比较繁琐,但比较好懂)/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x),
原创
发布博客 2015.09.18 ·
284 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

1 Two Sum

题意:给定一个数组nums和一个数target,在nums中找出和等于target的两个数,并返回两者的下标(下标从1开始)。分析:1)用两个for循环暴力两两匹配,复杂度为O(n^2),超时。            2)利用一个unordered_map或者map储存每个数和数的下标,对于每一个数nums[i]查找一次target-nums[i]是否存在,若找到返回两者在数组中的索引值+
原创
发布博客 2015.09.18 ·
367 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

222 Count Complete Tree Nodes

题意:求完全二叉树的节点个数。分析:    暴力枚举O(n)会超时。    首先,我们知道满二叉树的节点个数为2^h-1,其中h为树的高度;    其次,将完全二叉树都划分为左子树、根、右子树,由完全二叉树的定义可知,左右子树至少有一棵是满二叉树,于是总节点个数  countNodes(root) = 1+countNodes(root->left)+countNodes(root
原创
发布博客 2015.09.18 ·
718 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

151 Reverse Words in a String

题意:把一个句子中以空格隔开的单词分别反转分析:字符串操作。注意去掉首尾的空字符代码:class Solution {public: void reverseWords(string &s) { vector str; string t=""; while(s[0]==' '){ s.erase(0,1)
原创
发布博客 2015.09.17 ·
577 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多