自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (17)
  • 收藏
  • 关注

原创 leetcode 90:子集 II

因为已经做过leetcode78 做这个相对较容易  首先对数组进行排序 之后再进行操作void push(std::vector<std::vector<int>> &a,std::vector<int> &v,std::vector<int> &nums,int n,int s){ if(v.size()...

2018-10-31 23:26:41 88

原创 leetcode 78:子集

、void push(std::vector<std::vector<int>> &a,std::vector<int> &v,std::vector<int> &nums,int n,int s){ if(v.size()==n){ a.push_back(v); return;...

2018-10-31 23:17:01 76

原创 leetcode 60:第k个排列

直接使用全排列之后再进行提取,会超出时间限制。本题限定了1-9可以使用简单的方式比如 n=5;k=50;数组为1,2,3,4,5首先是(n-1)!=24  第一个元素应该为50/24+1 , 也就是3,代表的是没使用数组的第3个元素,也即为3,k=50%24=2第二个元素(n-2)!=6 元素应该为2/6+1 ,也就是1 代表的是没使用的数组的第1个元素,也即1 ,k=2%...

2018-10-31 10:07:52 104

原创 leetcode 31:下一个排列

本题需要考虑的情况比较多,当原本是降序的话,我们只需将取变为升序即可,比如:3,2,1 变为1,2,3当最后的两个元素,倒数地一个大于倒数第二个时,只需互换位置即可  比如3,1,2,变为3,2,1当不是最后两个元素出现nums[i-1]<nums[i]时,我们首先要找到i位置(包括i位置)之后的大于nums[i-1]的最小数,假设为nums[k],将该元素nums[k]与第...

2018-10-30 22:00:14 100

原创 leetcode 47:全排列 II

因为46题已做,本题只需要判断是否重复即可void perM(std::vector<std::vector<int>> &a,std::vector<int> &b,std::vector<int>&nums,std::vector<int>&v,int number,int len){

2018-10-30 19:45:23 66

原创 leetcode 46:全排列

本题属于全排列的题,类似与leetcode 17,使用递归即可,使用一个数组用来表示nums的元素是否已使用,0表示没使用  1表示已使用void perM(std::vector<std::vector<int>> &a,std::vector<int> &b,std::vector<int>&nums,std::...

2018-10-30 19:39:45 244

原创 leetcode 41:缺失的第一个正数

因为所要求的时间复杂度是O(n),且空间复杂度是常数,所以我们每个位置对应一个正整数 第一个位置是1 第二个位置是2 以此类推先对数组使用交换,之后再访问数组 当位置与正整数不对应时返回结果int firstMissingPositive(std::vector<int>& nums) { int temp=0; int i=0; int ...

2018-10-30 13:01:28 150

原创 leetcode 28:实现strStr()

int strStr(string haystack, string needle) { if(needle.size()==0) return 0; for(int i=0;i<haystack.size();i++){ int flag=0; if(needle.size()>(haystack.size()-i...

2018-10-30 11:30:07 77

原创 leetcode 27: 移除元素

int removeElement(vector<int>& nums, int val) { int n=nums.size(); if(n==0) return 0; for(int i=0;i<n-1;){ if(nums[i]==val){ for(int j=i+1;j<...

2018-10-30 11:27:04 78

原创 leetcode 26:删除排序数组中的重复项

int removeDuplicates(vector<int>& nums) { int len=nums.size(); cout<<len<<std::endl; for(int i=0;i<len;i++){ while(nums[i]==nums[i+1]&&i<...

2018-10-30 11:25:31 66

原创 leetcode 34:在排序数组中查找元素的第一个和最后一个位置

使用二分法的方式void search(std::vector<int> &nums, int target, std::vector<int> &a, int s, int t) { if (s == t) { if (nums[s] == target) { if (a[0] == -1) { a[0] = s; a...

2018-10-30 09:33:34 128

原创 leetcode 25:k个一组翻转链表

创建一个数组,存放k个节点,之后进行改变顺序即可 ListNode* reverseKGroup(ListNode* head, int k) { if (k == 1) return head; int i = 0; ListNode*l1 = head; std::vector<ListNode*>c; while (l1!= NUL...

2018-10-30 08:31:48 108

原创 leetcode 24:两两交换链表中的节点

递归即可ListNode* swapPairs(ListNode* head) { if(head==NULL) return NULL; ListNode* l1=head; ListNode *l2=new ListNode(0); if(l1!=NULL) { l2 = head->next; i...

2018-10-27 15:19:22 114

原创 leetcode 23:合并K个排序链表

直接使用递归即可ListNode *merge(std::vector<ListNode*>& lists,int s,int t){ if(s==t)return lists[s]; int m=(s+t)/2; ListNode*l=merge(lists,s,m); ListNode*r=merge(lists,m+1,t); ...

2018-10-27 14:12:34 128

原创 leetcode 18:四数之和

四数之和与两数之和,三数之和leetcode 15类似,最后都要到两数之和,通过s++,t--来降低时间复杂度std::vector<std::vector<int>> fourSum(std::vector<int>& nums, int target) { std::vector<std::vector<int>&...

2018-10-27 14:10:07 143

原创 leetcode 32:最长有效括号

一、先对字符串进行遍历  首先从前往后排除不配对的')'首次遍历后的字符串被分成若干个字符串  再对这些字符串 从后往前排除不配对的'('int longestValidParentheses(std::string s) { std::stack<int> ss1; std::stack<char> ss2; std::stac...

2018-10-27 10:23:43 135

原创 leetcode 40: 组合总和 II

本题跟leetcode39很类似,感觉比39简单一点儿,首先对candidates数组进行排序,递归中的第一步是对数组第一个数进行操作,可以选择选取,也可以选择不选取同时注意去除重复的数组void combination(std::vector<std::vector<int>> &a,std::vector<int> v,std::vec...

2018-10-26 23:27:06 94

原创 leetcode 39:组合总和

         同样是一个递归的题,类似与leetcode17。首先将输入的数组排序,这样能够保证先从小的数开始取,为了使得结果也是有序的,不至于重复,取一个数a要看是否大于等于已经取的数。比如candidates=[2,3,7],target=14如果已经取了[2,3], 再取时只能取大于等于3的数如果没有这个限制[2,2,3,3,2,2][3,3,2,2,2,2]均为...

2018-10-26 22:55:48 206

原创 leetcode 17:电话号码的字母组合

本题与leetcode 22 类似,使用递归的方式void letter(std::vector<std::string> &a,std::string digits,int number,std::map<char,std::vector<char>> m,std::string str){ int len=digits.size()...

2018-10-25 23:40:59 172

原创 leetcode 22:括号生成

    使用递归的方式来做,当l>0时,可以添加一个左括号,当l<r时,可以添加一个右括号void generateP(std::vector<std::string> &a,string s,int l,int r){ if(l==0&&r==0) { a.push_back(s); ret...

2018-10-25 22:30:38 103

原创 opencv中傅里叶变换的使用

一、频率域滤波:频率域滤波的原理:频率直接关系到空间变化率,低频对应于图像中变化缓慢的灰度成分,较高的频率对应于图像中越来越快的灰度变化:      1.频谱的直流低频分量对应于图像的平滑区域      2.频率的高频分量对应于图像的边沿或变化剧烈区域      3.外界叠加噪声对应于频谱中频率较高的成分      4.恒定的干扰条纹对应于频谱中的某些特征点频率域的滤波...

2018-10-25 16:56:10 1765

原创 leetcode 49: 字母异位词分组

std::vector<std::vector<std::string>> groupAnagrams(std::vector<std::string> &strs){ std::vector<std::vector<std::string>> sss; std::map<std::string,int...

2018-10-25 09:07:25 133

原创 leetcode 50:Pow(x, n)

double myPow(double x, int n) { if(n == 0) return 1; if(n == 1) return x; int m= n / 2; if(n < 0) { m = -m; x = 1 / x; } double result = myPow(x, m); ...

2018-10-24 22:59:00 94

原创 leetcode 21:合并两个有序链表

ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode *l3=new ListNode(0); ListNode *l4=l3; while(l1!=NULL&&l2!=NULL){ if(l1->val>=l2->val){ ...

2018-10-23 23:24:06 100

原创 leetcode 20:有效的括号

bool isValid(string s) { stack<int> sta; if(s.size()%2!=0){ return false; } for(int i=0;i<s.size();i++){ if(sta.empty()){ sta.push(s[i]); ...

2018-10-23 23:23:01 132

原创 leetcode 19:删除链表的倒数第N个节点

ListNode* removeNthFromEnd(ListNode* head, int n) { ListNode*l1=head; int c=0; while(l1!=NULL) { c+=1; l1=l1->next; } if(c==n)return head->next; if...

2018-10-23 23:18:55 88

原创 leetcode 16:最接近的三数之和

跟leetcode 15类似int threeSumClosest(std::vector<int>& nums, int target) { std::vector<std::vector<int>> a; std::vector<int> b; sort(nums.begin(),nums.end());...

2018-10-23 00:05:47 111

原创 leetcode 15:三数之和

vector<vector<int>> threeSum(vector<int>& nums) { vector<vector<int>> a; vector<int> b; sort(nums.begin(),nums.end()); if(nums.size()<3)

2018-10-22 22:50:03 160

原创 leetcode 14:最长公共前缀

string longestCommonPrefix(vector<string>& strs) { if(strs.size()==0){ return ""; } string aa=strs[0]; int flag=0; int bb=0; for(int j=0;j<aa.size();j++...

2018-10-22 22:48:52 128

原创 leetcode 13:罗马数字转整数

int romanToInt(string s) { int a=0; for(int i=0;i<s.size();){ if(s[i]=='M'){ a=a+1000; i++; } else if(s[i]==...

2018-10-22 22:46:44 167

原创 leetcode 12:整数转罗马数字

string intToRoman(int num) { vector<char> a; int m=num/1000; for(int i=0;i<m;i++){ a.push_back('M'); } num=num%1000; if(num/900){ a.push_back('C')...

2018-10-22 22:44:50 123

原创 leetcode 11: 盛最多水的容器

容器盛的水是所x轴的差值×较小的高int maxArea(std::vector<int>& height) { int max=0; int h=0; for(int i=0;i<height.size()-1;i++) { for(int j=i+1;j<height.size();j++) ...

2018-10-22 22:42:25 132

原创 leetcode 9:回文数

bool isPalindrome(int x) { vector<int> a; if(x<0) return false; if(x==0) return true; if(x>0){ while(x/10!=0){ ...

2018-10-21 16:57:19 97

原创 leetcode 8: 字符串转整数 (atoi)

如果字符串前面有空格,先将空格删除,之后看第一个字符是不是‘+’或‘-’,再对后面的字符取0-9的数int myAtoi(std::string str) { std::cout<<str.size()<<std::endl; if(str.size()==0)return 0; int j=-1; for(int i=0;i&lt...

2018-10-21 16:55:37 104

原创 leetcode 7: 反转整数

int reverse(int x) { int y=0; while(x){ int temp=y; y=y*10+x%10; if((y-x%10)/10!=temp){ return 0; } x=x/10; } return y;} 

2018-10-21 15:52:24 98

原创 leetcode 5:最长回文子串

std::string longestPalindrome(std::string s){ if(s.size()==0)return ""; if(s.size()==1)return s; int max=0; int start=0; for(int i=0;i<s.size()-1;i++) { int s1=i;...

2018-10-21 15:50:33 77

原创 leetcode 2:两数相加

ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) { int carry=0; ListNode *l4=new ListNode(0); ListNode *l3=l4; while(l1!=NULL||l2!=NULL){ int x=(l1!=NULL)?l1->val:0...

2018-10-21 15:47:42 162

原创 leetcode 1:两数之和

vector<int> twoSum(vector<int>& nums, int target) { int flag=0; vector<int>a; for(int i=0;i<nums.size()-1;i++){ for(int j=i+1;j<nums...

2018-10-21 15:46:19 76

原创 leetcode 6:Z字形变换

观察本题可以找到规律,每次对s的2*numRows-2个字母进行操作,比如3行时,每四个字母为一个循环,4行时每6个字母为一个循环。对于每次循环的前numRows个字母,用该字母的下标i%2*numRows 结果为当前字母所在的行。而对于每次循环的后numRows-2个字母,numRows-i%2*numRows为当前字母所在的行。以numRows举例,每6个字母为一个循环,就拿前6个字母...

2018-10-21 15:40:01 178

原创 均值滤波器的原理及实现

1.均值滤波器平滑线性空间滤波器的输出是包含在滤波器模板邻域内的像素的简单平均值,也就是均值滤波器。均值滤波器也是低通滤波器,均值滤波器很容易理解,即把邻域内的平均值赋给中心元素。均值滤波器用来降低噪声,均值滤波器的主要应用是去除图像中的不相关细节,不相关是指与滤波器的模板相比较小的像素区域。模糊图片以便得到感兴趣物体的粗略描述,因此那些较小的物体的灰度就会与背景混合在一起,较大的物体则变...

2018-10-14 17:03:41 41841

CCleaner清空回收站.rar

当回收站的碎文件比较多时,比如有非常多的小图片,会导致打开回收站时直接卡死,无法清空回收站,此时使用CCleaner可以在一段时间内清空回收站。

2019-11-25

vs2015卸载.rar

VS在安装之后会安装很多东西,如果在控制面板进行卸载很多东西无法完全卸载,而且卸载也比较耗时,使用这个软件快速彻底的删除VS2015

2019-11-25

opencv3.4.5.cache+opencv4.0.1.cache

该资源包括opencv3.4.5需要联外网下载的资源和opencv4.0.1的需要外网下载的资源 只需要在cmake之前将.cache解压之后放入opencv中 注意解压之后为.cache为隐藏文件

2019-03-25

opencv3.4.5+opencv3.4.5-contrib

opencv3.4.5的源码,包括opencv3.4.5-contrib,不过编译时下载较为麻烦

2019-03-25

opencv调用tensorflow pb模型

这是一个使用C++的opencv调用tensorflow训练好的一个二分类的模型, 代码包括C++文件和训练的python文件,训练设备为python3.5+tensorlfow-gpu1.4.0+ubuntu16.04 C++文件也是在ubuntu下写的,但是在windows下只需要稍作修改就可直接运行

2018-12-13

MFC子窗口与父窗口之间消息的传递

使用VS2015写的MFC子窗口与父窗口之间消息的传递,可以直接执行

2018-11-15

vim-7.4.tar.bz2和vimgdb-for-vim7.4-master.zip

这个资源包括vim-7.4.tar.bz2和vimgdb-for-vim7.4-master.zip

2018-11-12

opencv-3.4.0和opencv_contrib-3.4.0

学习opencv,需要安装的opencv-3.4.0和opencv_contrib-3.4.0

2018-11-12

图像处理必读书籍

图像处理必读书籍,包括傅里叶分析及其应用(潘文杰) .pdf、数字图像处理(中)第三版 (完美书签).pdf、数字信号处理第4版(中文版).pdf、小波与傅里叶分析基础.pdf

2018-11-10

boostdec opencv

boostdesc.cpp boostdesc_bgm.i boostdesc_bgm_bi.i boostdesc_bgm_hd.i boostdesc_binboost_064.i boostdesc_binboost_128.i boostdesc_binboost_256.i boostdesc_lbgm.i

2018-10-17

vgg_generate

vgg_generated_48.i vgg_generated_64.i vgg_generated_80.i vgg_generated_120.i

2018-10-17

基于视频的三维重建研究

这是一篇华中科技大学的硕士毕业论文,里面对三维重建技术的讲解很详细,适合作为综述来看

2018-07-20

VPGNet源码

2017年的新论文里的代码实现,车道线检测,使用了深度学习,caffe框架

2018-07-12

Anaconda3-4.2.0-Linux-x86_64.sh

anaconda3-4.2.0在linux系统上的安装包,对应的是python3.5

2018-07-10

腾讯深度学习框架ncnn-demo-vs2015

腾讯的深度学习框架里的demo,使用vs打开,需要配置opencv环境和ncnn的库目录

2018-07-10

基于图像的几何建模技术综述

基于图像的三维重建中的核心-基于图像的几何建模技术的综述

2018-07-10

心电信号的波形分析

工作室课题的用到的,上传的文件中包括所需要的心电信号数据以及对心电信号各种波形的分析

2015-09-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除