- 博客(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
原创 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
tensorflow_gpu-1.0.0-cp35-cp35m-win_amd64.whl
2017-03-22
CvvImage头文件和cpp
2016-03-30
ippicv_windows_20141027
2015-12-28
Office插件(.olb文件)注册工具
2014-10-08
一大堆olb、tlb文件
2014-10-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人