自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (20)
  • 收藏
  • 关注

原创 排序算法:归并排序

归并排序1. 将若干有序序列逐步归并为一个有序序列。2. 二路归并:最简单,将若干有序序列两两归并,直至形成一个有序序列。3. 采用的分治法。4. 二路归并非递归思路: 1. 将序列分成n个序列,每个序列一个元素,这样可以任务每个序列都是有序序列。 2. 逐一合并两个相邻的序列,使得每个序列长度为2. 3. 重复步骤2,直到序列的长度为n。 4. 子序列合并过程

2016-05-23 21:37:50 4192 1

原创 排序算法:快速排序

int Partition(int r[], int first, int end){ int i=first; int j=end; //初始化第一个元素为key while (i<j) { while (i<j && r[i]<= r[j]) j--; //右侧扫描 //走到这

2016-05-17 21:33:55 438

原创 排序算法:堆排序

堆排序1. 堆: 1. 一种完全二叉树。 2. 每个结点的值都大于或等于其左右子结点的值,大顶堆。 3. 小顶堆同理。2. 是简单选择排序的一种改进:把每次比较的结果用堆来保存起来。3. 堆排序(大顶堆): 1. 将待排序列构造成一个大顶堆。 2. 将堆顶和待排序列最后一个元素交换,也就是保存起来。 3. 将剩余的序列(去除最后一个元素)重新构造成

2016-05-14 10:11:06 596

原创 字符串中数字子串的求和

字符串中数字子串的求和题目: 给定一个字符串str,求其中全部数字串所代表的数字之和。要求: 1.忽略小数点字符,例如“A1.3”,其中包含两个数字1和3。 2.如果紧贴数字子串的左侧出现字符‘-’,当连续出现次数为奇数时, 则数字视为负,连续出现的数量为偶数时,则数字视为正。 例如:“A-1BC--12”,其中包含数字为-1和12。例:

2016-05-13 21:18:35 1279

原创 C++基础——vector内存释放

vector内存释放 之前看到这个问题,没有细究,过了两天被问到这个问题!!!为了支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都紧挨着前一个元素存储。STL实现者在对vector进行内存分配时,预留了一些额外的存储区,用于存放新添加的元素。size():成员指当前拥有的元素个数。 capacity():成员指当前(容器必须分配新存储空间之前)可以存储的元素个数。内

2016-05-11 21:27:20 5027

原创 C++编译链接

编译:compile,先针对单独原文件进行处理。每个cpp文件(文本形式存在的源代码)作为一个编译单元,被独立编译成一个目标文件(obj,机器语言形式),它用目标语言来描述.cpp的内容。不同CPP文件的函数可以通过声明的方式使用,通常声明放在H文件里。链接:link,把compile处理的结果组合成一个完整的可执行文件。接器将所有的目标文件obj链接起来,形成一个.exe

2016-05-10 19:56:46 518

原创 OpenCv训练降低CPU占用率

OpenCv使用cpu训练数据时候,cpu占用率会达到100%,这样的效率很快,但是会升高温度缩短cpu使用时间,影响其他程序运行。 打开任务管理器减少节点,当然你也可以用GPU训练。

2016-05-10 19:05:58 5287

原创 cmake编译 opencv_contrib-master时候遇到错误

错误内容:Unknown CMake command "ovc_define_module".这不是我的错!是它们的CMakeLists.txt中的ocv_define_module写成了ovc_define_module,手动改一下就好了。我下载了他们的最新更新的文件,里面已经改正了。

2016-05-10 15:59:42 7954 6

原创 C++判断字符串是否为变形词

思路 遍历字符串a计算a中每个字符出现的次数计算b中相同字符的出现次数比较注意: 任一字符串为空返回false。两个字符串长度不等,可直接返回false。复杂度率高n*n,降低复杂度的方法: 使用哈希表,记录字符和出现次数。使用数组或者容器,acsII个数为256,申请256的空间即可,记录字符出现的次数。 /*题目:给定两个字符串str1和str2,如果str1和str2中

2016-05-09 20:59:45 1662

原创 C++字符串拷贝实现:递归方法&非递归方法

面试遇到的写代码题: 递归 char* c_copy(char* dst,const char* src) { if (*(src) =='\0') { *dst = '\0'; return dst; } *dst = *src; dst++; src++; c_copy(dst,src);

2016-05-09 20:13:05 1333

原创 C++基础知识 动态链接库和静态链接库

动态链接库dll: Dynamic-link Library是一种不可执行的二进制程序文件,包含被可执行程序和其他dll调用的函数。windows中最重要的dll: Kernel32.dll:管理内存、进程、线程。User32.dll:执行用户界面任务,比如窗口的创建和消息的传送。GDI32.dll:画图和显示文本。dll不是唯一的扩展名,如linux下常常是.so。使用: 需要文件

2016-05-09 19:45:39 1993

原创 转圈打印二维数组

题目要求: 思路: 我的最初思路: 将矩阵的四个边作为边界,一个循环执行四次九十度转弯,用swich、case实现,当四个边界指向一个位置结束循环,但是在拐点的处理上比较麻烦。 资料参考的思路: 写一个函数,输出二维数组一圈的元素。 循环执行上个函数,也就是输出每个圈的元素。

2016-05-08 21:37:01 1837

原创 C++基础知识——二维数组做函数参数

1.确定大小的二维数组void Func(int array[3][10]); void Func(int array[][10]); 2.不确定大小的二维数组转为二维指针:从实参传递来的是数组的起始地址,在内存中按数组排列规则存放(按行存放),而并不区分行和列,所以可以转换成二维指针。void Func(int **array, int m, int n); 

2016-05-06 21:03:08 1223

原创 C++基础知识——变量存储位置

1.栈区(stack):程序运行时由编译器自动分配存放:函数的参数值,局部变量的值。存储连续,其操作方式类似于数据结构中的栈。栈区处于相对较高的地址以地址的增长方向为上的话,栈地址是向下增长的,所以空间有限,windows下大多1-2M。2.堆区(heap): 在内存开辟另一块存储区域。一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。存放:程序员

2016-05-06 10:31:09 1347

原创 C++ cin被跳过

问题:今天写代码发生了第二个cin被跳过的情况,原来是因为我的第一个cin,输入的是文件路径,较长,自动换行了,也就产生了两次换行(\n),所以第二个cin发现有换行就不等待输入了,直接存了一个空的内容。解决方法:cin.ignore()basic_istream& ignore( streamsize _Count = 1, int_type _Delim = tra

2016-05-05 16:39:37 7386 2

原创 C++去除文件名中的空格

思路遍历文件,详见点击打开链接去除文件名中的空格char *strRemov(char* dst, const char* src, char ch = ' '){ int i = -1, j = 0; while (src[++i]) if (src[i] != ch) dst[j++] = src[i]; dst[j] = '\0'; return dst;}

2016-05-05 16:17:11 1382

原创 C++写入txt文件方法

用ofstream 输出流,#include ofstream outf; outf.open("abc.txt");outfoutf.close();觉得好就微信赞我吧

2016-05-05 16:03:13 30679

转载 C/C++获得当前程序路径

获得工作目录如下:[cpp] view plain copy#include    #include        char   buffer[MAX_PATH];       getcwd(buffer, MAX_PATH);       printf( "The   current   directory   is:   

2016-05-05 15:47:24 599

原创 opencv源码解读——haartraining

1.参数:-data :指定生成的文件目录-vec :正样本的保存文件-bg :负样本的保存文件-npos :正样本的数量  默认2000-nneg :负样本的数量 默认2000-nstages :训练的层数 默认14-nsplits :决定adaboost的弱分类器,默认 1 ,则一个简单的 stump classifier 被使用。如果是n,则使用带有 n

2016-05-05 10:35:33 1260

原创 STL 使用遇到的问题汇总(更新中)

1.二重容器写法:   vector     >   array2(3);// 注意> 和> 之间的空格!!!

2016-05-05 09:30:55 450 1

原创 Leetcode 113. Path Sum II

思路:1.首先遍历路径放到一个vector中,遍历过程中不断计算结点之和。2.当num>=0时候,到达叶子结点或者和超过num停止此路径的左右孩子的遍历,判断此时和是否与num相等,若相等则放入二重容器。3.当num4.如果树只有根节点,则判断是否与num相等即可。 void allpath(TreeNode* root,vector &s,vector > &vec

2016-05-04 21:31:50 459

原创 C++基础知识—常量和常成员函数

1.常量:程序运行的整个过程中,其值始终不可改变的量,const int a = 100;同int const a = 100。2.指向常量的指针:const char  *c = "abc";   与 char const *c = "abc";相同,const的修饰符是char。c[2] = 'd';//F 不能修改指向的常量c = "def";//T数组名退化为指针,指针的值可以

2016-05-04 17:29:21 789

原创 OpenCV 源码解读——createsample

最近在学习,网上有很多训练的教程,但是不够深入,照葫芦画瓢会导致遇到问题无从下手。遂将源码创建工程,通过看注释和调试程序对源码有了一定认识,了解什么是瓢,分享在这里,从createsample开始。在VS中,通过项目属性->配置属性->调试 设置命令行参数,如 -img .\pos\2.bmp -vec vec.txt -num 9 -w 20 -h 20 -show 。对源码增加了在生成vec文件之前,保存各个样本的功能,这样就知道样本的具体情况,遇到问题更好解决,如有需要欢迎交流。

2016-05-04 16:14:35 2751

原创 Leetcode 257. Binary Tree Paths

Given a binary tree, return all root-to-leaf paths.For example, given the following binary tree:1 / \ 2 3 \ 5 All root-to-leaf paths are:[“1->2->5”, “1->3”]思路:遍历二叉树的路径使用一个栈根节点入栈,前序遍历左右

2016-05-03 20:06:07 449

原创 Error:‘itoa’ was not declared in this scope

解决方法 c++11: std::to_stringsprintf stdio.hchar *c = new char; sprintf(c,"%d",num);stringstream sstream.hstringstream ss; int x = 1; ss << x; string str = ss.str();

2016-05-03 19:40:12 11383 4

原创 C++基础知识——指向指针的指针

1.数组名会退化为首元素的指针,所以指针数组的名字是一个指向指针的指针: int *a[10]; int **b = a;2.由1我们可以理解二重指针为,该指针指向一个数组,这个数组的每个元素都是指针。3.当一个函数需要改变传递给它的指针的值的时候,使用多重指针,也可以用指向指针的引用作为参数(简单且安全)。在数据结构中常会用到。#include <stdio.h>#inclu

2016-05-03 17:13:37 594

原创 C++基础知识——引用

1.引用就是变量的别名,需要用另一个变量或者对象进行初始化:int &b = a。 2.引用必须初始化,初始化时引用指向的对象必须存在。 3.引用和变量指向同一块内存,通过引用可以改变内存中的内容。 4.通常用在函数的形参定义上:void swap(int &a,int &b)。 5.引用已经指向一个对象之后,这个引用不能指向其他对象。 6.一个指向非常量的引用是不可以用字面值或者临时值进

2016-05-03 16:25:43 402

原创 C++ 结构体指针的定义

struct node { …… } ; struct node *p1, *p2 ;typedef struct node { …… }Node;typedef Node* pNode;typedef struct node { ……}*pNode;

2016-05-02 21:49:57 4734

原创 二叉树主要知识点总结

1.二叉树第i层至多有2^(k-1)个结点(i>=1)。 2.深度为k的二叉树上,至多含2^k-1个结点(k>=1) 3.n0 = n2 + 1(度) 4.满二叉树:深度为k且含有2^k-1个结点的树。 5.完全二叉树:除最后一层外,每一层上的节点数均达到最大值;在最后一层上只缺少右边的若干结点。 (树中所含n个结点和满二叉树中编号为1至n的结点一一对应)。 6.具有n个结点的完

2016-05-02 20:34:59 6494

numpy-1.12.1-cp35-none-win_amd64.whl

numpy-1.12.1-cp35-none-win_amd64.whl

2017-03-22

tensorflow_gpu-1.0.0-cp35-cp35m-win_amd64.whl

tensorflow_gpu-1.0.0-cp35-cp35m-win_amd64.whl

2017-03-22

cudnn-7.5-windows7-x64-v5.0-ga

cudnn-7.5-windows7-x64-v5.0-ga

2017-03-22

python-3.5.3-amd64.exe

python-3.5.3-amd64.exe

2017-03-22

c++遍历文件夹下文件去除文件名中的空格

c++遍历文件夹下文件去除文件名中的空格。

2016-05-05

CvvImage头文件和cpp

在MFC使用OpenCv显示图片的必备的东西,http://blog.csdn.net/songzige/article/details/51005250。

2016-03-30

ippicv_windows_20141027

cmake 配置opencv http://blog.csdn.net/songzige/article/details/50404962

2015-12-28

bioinspired

bioinspired测试文件  

2015-12-25

sqlite3 的vs2013项目

sqlite3的基于vs2013的项目,测试项目。

2015-12-19

Opencv3.0+VS2013 配置好的的工程

我的提取路径是D盘,比如lib路径是这样的D:\opencv\build\x86\vc12\lib,我的博客里有说明。

2015-11-17

webstrom11 汉化

webstrom汉化,将cn替换en文件即可,resources_cn替换webstrom lib下的resources_en

2015-11-16

将视频输出成帧

里面有说明,将视频和exe放在同一文件夹下即可,有问题请交流。

2015-11-16

opencv300.props

opencv300.props,在VS2013下配置OpenCV3.0 必备

2015-01-23

Office插件(.olb文件)注册工具

用于注册olb,tlb等文件http://blog.csdn.net/songzige/article/details/39893989

2014-10-08

一大堆olb、tlb文件

解决SQL server 和 VS %commondir%\dte80.olb, %commondir%\dte80a.olb %CommonDir%\vslangproj2.olb等问题

2014-10-08

RSA加密文本 (解密有点问题,可以下载我的数字签名代码)

利用rsa将输入的文本进行加密。解密有些问题,如需要可以下载我的数字签名资源

2013-12-01

SHA-1算法生成数字签名 MFC实现

利用MFC实现的SHA-1算法生成数字签名。绝对有效

2013-12-01

c迷宫游戏代码

就是一款迷宫游戏,用c语言开发的,为大家分享下。

2013-07-10

java小程序合集

各种小程序,有扫雷、贪吃蛇、聊天等,java课程设计,软件体系结构课程设计都可以用的到。

2013-07-10

空空如也

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

TA关注的人

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