- 博客(59)
- 收藏
- 关注
原创 pip更换为清华源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
2020-07-19 11:42:31
1555
原创 20.包含min函数的栈
题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 class Solution {public: //每个函数其实都是数据段的功能函数(非底层实现的那种功能,也就是单纯地调用API),在这基础上实现了min()功能。 void push(int value) //实现了两个栈的压入功能 { ...
2018-09-02 21:31:46
138
原创 17.树的子结构
题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 思路:1.先在A中找与B的根节点一样的结点2.找到根结点后,再判断左右子树是否与B相同,递归条终止件是到达了树A或树B的叶结点/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *r...
2018-08-24 20:27:24
149
转载 打印1到最大的n位数
博客原地址:https://blog.csdn.net/cxllyg/article/details/7651410 题目:输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999。分析:这是一道很有意思...
2018-08-24 17:26:48
143
原创 16.合并两个排序的数组
题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 /*struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};*/class Solution {public: ListNod...
2018-08-23 17:29:45
180
原创 15.反转链表
题目描述输入一个链表,反转链表后,输出新链表的表头。 /*struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};*/class Solution {public: ListNode* ...
2018-08-23 11:44:19
110
原创 在O(1)时间删除链表结点
我们要删除结点i,先把i的下一个结点j的内容复制到i,然后把i的指针指向结点j的下一个结点,此时再删除结点j,其效果等价于把结点i删除了。特殊情况:要删除的结点位于链表的尾部,链表只有一个结点 void DeleteNode(ListNode** pListHead,ListNode* pToBeDeleted){ if(!pListHead || !pToBeDelete...
2018-08-23 09:23:53
99
转载 指针
博客原文地址:https://blog.csdn.net/u013011717/article/details/48325027 复杂指针的声明用变量a给出下面的定义: 定义一个整型数。定义一个指向整型数的指针。定义一个指向指针的指针,它指向的指针是一个指向整型数指针。定义一个有10个整...
2018-08-21 22:14:23
1078
原创 14.输出链表中倒数第k个结点
题目描述输入一个链表,输出该链表中倒数第k个结点为了能够只遍历一次就能找到倒数第k个节点,可以定义两个指针: (1)第一个指针从链表的头指针开始遍历向前走k-1,第二个指针保持不动; (2)从第k步开始,第二个指针也开始从链表的头指针开始遍历; (3)由于两个指针的距离保持在k-1,当第一个(走在前面的)指针到达链表的尾结点时,第二个指针(走在后面的)指针正好是倒数第k个...
2018-08-21 18:32:08
275
原创 13.调整数组顺序使奇数位于偶数前面
题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。类似插入排序,如果当前数是奇数,就往前找,遇到偶数就往它前面插,即做交换。如果当前是偶数,则不作处理,往后遍历class Solution {public: void reOrderArray(vec...
2018-08-21 11:39:31
119
转载 插入排序
原始地址:https://blog.csdn.net/llzk_/article/details/51628574 插入排序相对冒泡排序而言是一种较为快捷方便的排序算法。冒泡排序:http://blog.csdn.net/llzk_/article/details/51547923插入排序原理...
2018-08-21 10:17:25
88
原创 12.数值的整数次方
题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。要考虑特殊情况:底数为0,指数为0,指数为负取绝对值函数abs()可直接调用class Solution {public: double Power(double base, int exponent) { //if(exponent==0||b...
2018-08-19 17:26:33
120
转载 c++中的左移、右移运算
移位运算包含“逻辑移位”(logical shift)和“算术移位”(arithmetic shift)。逻辑移位:移出去的位丢弃,空缺位(vacant bit)用 0 填充。算术移位:移出去的位丢弃,空缺位(vacant bit)用“符号位”来...
2018-08-19 16:14:37
1646
原创 11.二进制中1的个数
题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 思路:如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。其余所有位将不会受到影响。举个例子:一个二进制数1100,从右边数起第三位是处于最右边的一个1。减去1后,第三位变成0,它后...
2018-08-19 10:37:08
198
原创 10.矩形覆盖
题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?按第一个小矩形放到最左边是横放还是竖放来分类,例如用8个2*1的小矩形无重叠的覆盖一个2*8的大矩形。1.竖着放的时候,右边还剩2*7的区域,此时覆盖方法为f(7)2.横着放的时候,比如横放在左上角,那么左下角也必须横放一个,这样右边还剩2*6的区...
2018-08-19 05:58:26
157
原创 9.变态跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路一:按第一步来分类:因为n级台阶,第一步有n种跳法:跳1级、跳2级、到跳n级跳1级,剩下n-1级,则剩下跳法是f(n-1)跳2级,剩下n-2级,则剩下跳法是f(n-2)...跳n-1级,剩下1级,则剩下跳法是f(1) 跳n级,剩下0级,这种情况跳法...
2018-08-19 05:31:29
120
原创 8.跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 假定第一次跳的是一阶,那么剩下的是n-1个台阶,跳法是f(n-1);假定第一次跳的是2阶,那么剩下的是n-2个台阶,跳法是f(n-2)由以上假设可以得出总跳法为: f(n) = f(n-1) + f(n-2) 然后通过实际的情况可以得出:只有一阶的时...
2018-08-19 04:39:48
104
原创 旋转数组的最小数字
题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。注意:特例:已排序数组也可作为旋转数组,有多个相同的数字的情况class Solution {pu...
2018-08-19 03:00:19
116
原创 7.斐波那契数列
题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39非递归class Solution {public: int Fibonacci(int n) { if(n<=1) return n; int n0=0,...
2018-08-19 02:57:34
113
原创 二分查找
递归int BinarySearch(int array[], int value, int start, int end){ if (start > end) return -1; int mid = start + (end - start) / 2; //把相等的情况放在最前 if (array[mid] == value) return mid; ...
2018-08-16 23:00:11
95
原创 快速排序
参考博客https://blog.csdn.net/morewindows/article/details/6684558挖坑填数+分治挖坑填数,先从后往前找,再从前往后找1.i =L; j = R; 将基准数挖出形成第一个坑a[i]。2.j--由后向前找比它小的数,找到后挖出此数填前一个坑a[i]中。3.i++由前向后找比它大的数,找到后也挖出此数填到前一个坑a[j]中。...
2018-08-16 13:52:08
107
原创 5.两个栈实现队列 以及 两个队列实现栈
题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:入队:将元素进栈A出队:判断栈B是否为空,如果为空,则将栈A中所有元素pop,并push进栈B,栈B出栈; 如果不为空,栈B直接出栈。 代码pop()操作只是删除了栈顶元素,没有返回栈顶的元素,top()操作只是返回了栈顶的元素,但是没有删除栈顶的元素。入栈的操作函数是...
2018-08-16 11:31:26
131
原创 4.重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路:在前序遍历中第一个永远是根节点的值, 因此在前序遍历中可以确定根节点;在中序遍历中,根节点值左边的是左子树的所有节点值,根节点右边是右子...
2018-08-16 09:11:22
104
原创 从尾到头打印链表
一、题目描述输入一个链表,从尾到头打印链表每个节点的值。二、代码(来自牛客网Invoker_em)用递归的思想/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* val(x), next(NULL) ...
2018-08-16 09:06:58
83
转载 c++中“箭头(->)”和“点号(.)”操作符的区别
原文地址:https://blog.csdn.net/gyymen/article/details/4962873 首先介绍一下C++中的结构。对于一个结构: [cpp] view plain copystruct MyStruct { int member_a; }; 如果有个变量MyStruct s,那么使用其中的成员元素时可以用: [cp...
2018-08-14 23:41:10
372
原创 2变式:两有序数组合并
本题为《剑指Offer》“面试题4:替换空格”一节中的“相关题目”。有两个排序的数组A1和A2,内存在A1的末尾有足够多的空余空间容纳A2。请实现一个函数,把A2中的所有数字插入到A1中并且所有数字是排序的。分析其实这道题就是实现一个归并排序,只是在数组中,数据是顺序存储的,如果在数组头部进行归并排序,每一次操作都会移动后面所有的数据,开销很大。所以应该从尾部进行操作。 //...
2018-08-14 21:21:08
100
原创 2.字符串替换空格
题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。考点:字符串要点:从后向前遍历,再移动字符串void replaceSpace(char *str,int length) { int count=0; for(int ...
2018-08-14 18:16:50
118
原创 1.二维数组中的查找
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。要点:从左下角或右上角查找 bool Find(int target, vector<vector<int> > array) { ...
2018-08-14 18:00:29
89
原创 新配置opencv3.0.0+vs2013
已有配置opencv2.4.9,要换成3.0.0,须新建vs控制台程序,再配置,添加库目录时只需添加D:\opencv300\opencv\build\x86\vc12\lib一个,无需添加D:\opencv300\opencv\build\x86\vc12\staticlib...
2018-07-01 23:17:41
237
转载 【OpenCV入门教程之一】 安装OpenCV:OpenCV 3.0、OpenCV 2.4.8、OpenCV 2.4.9 +VS 开发环境配置
本系列文章由@浅墨_毛星云 出品,转载请注明出处。 文章链接: http://blog.csdn.net/poem_qianmo/article/details/19809337 作者:毛星云(浅墨) 微博:http...
2018-06-07 15:35:56
240
转载 “error LNK2019: 无法解析的外部符号”的几种可能原因
1.前言error LNK2019: 无法解析的外部符号这个错之前见过很多次,能知道最根本的原因在于链接过程中没有搜索到程序用到的库文件,即*.lib。笔记本重装了系统,有32Bit升到64Bit,运行VTK程序时,始终报错如下:1> 正在创建库 E:\Driverprogram\i...
2018-06-05 16:24:38
70359
1
转载 MFC动态加载图片
[cpp] view plain copy print?void CMFCDemoDlg::OnInsertImage() { CFileDialog dlg(TRUE,_T(”jpg”),_T(“*.jpg”),&...
2018-06-03 00:11:05
1874
转载 SIFT建立图像金字塔
SIFT(Scale-Invariant Feature Transform,尺度不变特征转换)在目标识别、图像配准领域具有广泛的应用,下面按照SIFT特征的算法流程对其进行简要介绍对SIFT特征做简要介绍。高斯金字塔是SIFT特征提取的第一步,之后特征空间中极值点的确定,都是基于高斯金字塔,因此SIFT特征学习的第一步...
2018-05-18 23:02:28
1053
转载 SIFT算法
尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Funzdd zddmail@gmail.com or (zddhub@gmail.com)对于初学者,从David...
2018-05-18 10:11:50
518
转载 神经网络中epoch, iteration, batchsize相关理解和说明
batchsize:中文翻译为批大小(批尺寸)。简单点说,批量大小将决定我们一次训练的样本数目。batch_size将影响到模型的优化程度和速度。为什么需要有 Batch_Size :batchsize 的正确选择是为了在内存效率和内存容量之间寻找最佳平衡。 Batch_Size的取值:...
2018-05-17 22:21:15
545
转载 Tensorflow中tf.train.exponential_decay函数(指数衰减法)
在Tensorflow中,为解决设定学习率(learning rate)问题,提供了指数衰减法来解决。通过tf.train.exponential_decay函数实现指数衰减学习率。步骤:1.首先使用较大学习率(目的:为快速得到一个比较优的解); &nb...
2018-05-17 22:19:39
200
转载 Windows下用Anaconda安装TensorFlow,并在pycharm中使用
之前一直提示没有装scipy库,折腾了好久终于搞出来了,按照这篇帖子来的。笔者之前在学习TensorFlow,也在自己的笔记本上完成了安装,在PyCharm中进行学习。但是最近为了使用Python的科学计算环境,我把之前的环境卸载了,并用Anaconda重新安装了TensorFlow,由于自己的笔记本已经很旧了,显卡不行...
2018-05-17 11:34:17
507
转载 【特征检测】HOG特征算法
简介 HOG(Histogram of Oriented Gridients的简写)特征检测算法,最早是由法国研究员Dalal等在CVPR-2005上提出来的,一种解决人体目标检测的图像描述子,是一种用于表征图像局部梯度方向和梯度强度分布特性的...
2018-05-10 21:26:00
569
转载 Adaboost算法原理分析和实例+代码(简明易懂)
Adaboost算法原理分析和实例+代码(简明易懂) 【尊重原创,转载请注明出处】 http://blog.csdn.net/guyuealian/article/details/70995333 本人最初了解AdaBoost算法着实是花了几天时间...
2018-05-10 21:12:39
260
原创 iteration、batch_size、epoch的区别
三者的区别:(1)iteration:表示1次迭代,每次迭代更新1次网络结构的参数;(2)batch_size:1次迭代所使用的样本量;(3)epoch:1个epoch表示过了1遍训练集中的所有样本。需要补充的是,在深度学习领域中,常用随机梯度下降算法(Stochastic Gradient Descent, SGD)训练深层结构,它有一个好处就是并不需要遍历全部的样本,当数据量非常大时十分
2018-05-10 16:32:19
521
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人