
C++
att0206
C/C++、Qt、ISP、图像处理(增强、降噪)、Opencv、ncnn、机器学习、深度学习、边缘计算、arm算法优化等领域,望能跟共同志向者一同学习交流!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Opencv4.2中使用线程保存处理后的视频文件
Opencv4.2录制视频线程原创 2022-07-15 15:54:44 · 2297 阅读 · 0 评论 -
常用的C++中的小的代码集锦,不定期更新
文件操作代码,已经有大佬将Linux中的dirent.h翻译成window中可以用的代码,有需要的可以去资源区下载。或者私信我邮箱即可。1、遍历文件夹文件操作:void wcl::file::getFiles(std::string path, std::vector<std::string>& files){ intptr_t hFile = 0; struct _finddata_t fileinfo; std::string p; int原创 2020-12-31 16:31:43 · 859 阅读 · 0 评论 -
《剑指Offer》之数值的整数次方
题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。注:本系列全部在牛客网上进行在线测试通过,并且在VS2015上编译通过;思路解析: 本题还是属于easy 类题,主要需要考虑几个特殊情况:base为0的情况exponent为0情况exponent小于0等三种情况。代码如下所示:#inc...原创 2018-08-19 16:52:27 · 199 阅读 · 0 评论 -
LeetCode之移除已排序数组中的相同元素
描述: Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length. Do not allocate extra space for another array, you must d...原创 2018-08-17 18:41:02 · 149 阅读 · 0 评论 -
LeetCode之Remove Duplicates from Sorted Array II
题目描述: Follow up for ”Remove Duplicates”: What if duplicates are allowed at most twice? For example, Given sorted array A = [1,1,1,2,2,3], Your function should return length = 5, and A is now [1,1,2...原创 2018-08-20 17:56:09 · 147 阅读 · 0 评论 -
《剑指Offer》之调整数组顺序使得基数在偶数前面
题目描述; 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。注:本系列例程均在牛客网在线编程编译通过,并且在VS2015中编译通过;思路分析: 主要采用的是两个vector容器来存放在遍历数组的时候分别将基数和偶数放到其中一个容器中;这样时间代价为O(n);代...原创 2018-08-20 20:55:59 · 200 阅读 · 0 评论 -
二叉树的前序/中序/后续遍历的几种实现方法
树的定义如下:struct TreeNode{ int value; TreeNode* Right; TreeNode* Left; TreeNode(int x):value(x),Right(NULL),Left(NULL){}};原创 2018-08-23 21:45:51 · 174 阅读 · 0 评论 -
《LeetCode》之Valid Parentheses
题目描述: Given a string containing just the characters ‘(‘, ‘)’, ‘{‘, ‘}’, ‘[’ and ‘]’, determine if the input string is valid. The brackets must close in the correct order, “()” and “()[]” are all va...原创 2018-08-28 11:46:43 · 169 阅读 · 0 评论 -
再来谈谈递归
今天在知乎看到一句话,所谓的算法最终一切都归于——数学之美,显然目前我还没到这个水平,还仅仅是畅游在算法的海洋中发现一个个“新大陆”,未触及的知识还有很多;虽说学算法学的是它的思想,但就这个思想是最不好让人把握的,一旦一个题目把握了它的解题思路,立马醍醐灌顶,豁然开朗;就在之前的字节跳动笔试题中就有递归的身影,巧妙且精简,让人回味无穷; 今天就简单回味下递归的解题思路;先开,不断更新;...原创 2018-08-21 13:00:10 · 203 阅读 · 0 评论 -
《剑指Offer》之跳台阶
题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。分析:本题可以用普通的递归来解,但是会超时,所以可以用能过存储数据的DP来解决,状态转移方程为:注:本系列都在牛客网在线编程通过,并且在本地VS2015编译通过;DP[j] = DP[j-1]+DP[j-2]同时用一个容器来存储这些数据即可,时间复杂度...原创 2018-08-24 13:25:20 · 201 阅读 · 0 评论 -
LeetCode之Maximum Subarray
题目描述: Find the contiguous subarray within an array (containing at least one number) which has the largest sum. For example, given the array [−2,1,−3,4,−1,2,1,−5,4], the contiguous subarray [4,−1,2,1...原创 2018-08-21 15:18:38 · 205 阅读 · 0 评论 -
《剑指Offer》之从上往下打印二叉树
题目描述:从上往下打印出二叉树的每个节点,同层节点从左至右打印。思路: 这题类似于层次打印,只需要用到一个队列,依次输入顶点以及左结点和又结点依次进队的顺序即可;注: 本系列全部在牛客网上在线编程通过,并且在本地VS2015上编译通过;代码如下:#include&lt;iostream&gt;#include&lt;vector&gt;#include&lt;q...原创 2018-08-24 18:47:44 · 269 阅读 · 0 评论 -
LeetCode之Longest Substring Without Repeating Characters
Descrition: Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repeating letters for “abcabcbb” is “abc”, which the len...原创 2018-09-06 17:49:25 · 195 阅读 · 0 评论 -
《剑指Offer》之二进制中1的个数
题目描述;输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。注:本系列全部通过牛客网在线编译通过,并且在VS2015上也编译通过;#include<iostream>using namespace std;class Solution {public: int NumberOf1(int n) { int num = 0;...原创 2018-08-19 16:28:34 · 197 阅读 · 0 评论 -
《剑指Offer》之Fibonacci
题目描述;大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 注:本系列全部在牛客网在线编程测试通过,并且在VS2015编译通过;思路解析: 看到这题,是不是大家都觉得一个递归几行代码就搞定了class Solution {public: int Fibonacci(int n) { ...原创 2018-08-19 16:10:56 · 175 阅读 · 0 评论 -
C++中的--【排序算法】
本文主要是学习C++标准库中的排序算法的应用,一般来讲C++提供的排序算法只能针对int类型的数据进行相应升序或降序。本文中用的是ID类类型的数据,拥有两个参量,一个是string类型的name,另一个是int类型的score数据,所以如果对它们进行排序的话需要对==和<运算符进行运算符重载,这也是C++一大亮点之一,使得程序开发变得更加灵活!引用《The C++ Programming Langu原创 2017-03-18 16:31:36 · 424 阅读 · 0 评论 -
Opencv+Qt【拍照&人脸识别】
环境:VS2012+Qt5+Opencv2.4.10,window10系统功能:打开电脑摄像头进行人脸显示,可以拍照存储到本地,最重要的是能够实现人脸的检测与识别。一、第一部分:人脸识别先讨论人脸的识别过程: 1、收集训练库,这里采用的是ORL人脸数据集,总共有40个人,每人10张,为了能够识别自己,需要采集自己不同角度以及光照的10张脸部分的照片,加入ORL数据集存储在s41文件夹内原创 2017-06-10 16:49:47 · 4845 阅读 · 3 评论 -
Opencv+Qt+libfacedetection【人脸识别&人脸挂件】
环境:Opencv2.4.10、Qt5、libfacedetection、window10系统功能:人脸识别,人脸特定部位跟踪(眼睛、鼻子、嘴巴等)、实现在人脸一些部位实现挂件的实时跟踪。第一部分:libfacedetection简介第二部分:libfacedetection与Opencv中的人脸检测对比第三部分:总结第四部分:结果展示先上一张结果图:可以使用这个技能装逼了(笑哭),启发于经常在原创 2017-06-13 19:47:50 · 1817 阅读 · 5 评论 -
C++ 中的【类模板】
C++语言的确是一个强大的编程语言,与C语言有很大的差异,虽说许多基本思想是一样的,比如结构体和模板,其实如果你有C语言的基础,学习这个class类还是比较容易上手的,在struct结构体的基础上增加私有和保护的元素,这样可以使得class类中的数据访问更加安全,而模板的产生则是体现了一种重载的机制,可以通过一个类实现许多不同类型的数据的调用问题。从而极大的简化了开发过程,使得使用起来更加方便。具原创 2017-03-14 11:45:28 · 433 阅读 · 0 评论 -
《剑指Offer》之滑动窗口的最大值
题目描述:给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组 {2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为 {4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3...原创 2018-08-18 15:58:31 · 148 阅读 · 0 评论 -
《剑指Offer》之反转链表并返回头指针
描述: 输入一个链表,反转这个链表,并输出反转后链表的头指针;注:本核心代码都是在牛客网在线编程中进行测试通过,并且在VS2015上进行编译通过;代码如下所示:#include<iostream>#include<vector>using namespace std;struct ListNode { int val; stru...原创 2018-08-18 21:31:19 · 431 阅读 · 0 评论 -
C++中对字符串的分割
由于C++中没有split函数,因此,为了能够对获取的字符串进行按一定符号进行分割,在此学习了通过字符串的find()方法和substr()方法来实现split();具体描述如下: //涉及到string类的两个函数find和substr: // //1、find函数 //原型: size_t find(const string& str, size_t pos = 0...原创 2018-08-16 12:28:30 · 11436 阅读 · 1 评论 -
C++11标准中的unordered_map()函数
参考:cplusplus的reference最近在刷Leetcode和《剑指Offer》算法题,其中就遇到了许多C++11新特性的内容出现,比如unordered_map()函数,这是一个无序的哈希表函数,...原创 2018-08-16 18:49:17 · 2057 阅读 · 0 评论 -
LeetCode之Longest Consecutive Sequence
Descrition: Given an unsorted array of integers, find the length of the longest consecutive elements sequence. For example, Given [100, 4, 200, 1, 3, 2], The longest consecutive elements sequence is...原创 2018-08-16 18:54:06 · 174 阅读 · 0 评论 -
《剑指Offer》之链表中倒数第k个结点
题目描述: 输入一个链表,输出该链表中倒数第k个结点。思路分析: 由于是要找到倒数第k个结点,而链表又不可以直接索引,因此,引入栈存储各个链表的结点,利用栈的反序功能,然后只需要返回第k个结点就可以了; 本题中需注意:unsigned int 和int的转换k的值不能等于0或者大于链表的总长度链表为空有点小坑,注意的地方大体就是上面的几个地方,毕竟提交了几次每次都只是部分...原创 2018-08-22 13:34:37 · 164 阅读 · 0 评论 -
《剑指Offer》之两个栈实现一个队列的push()与top()方法
题目描述: 用两个栈来实现一个队列,完成push()和top()功能;注:本系列程序都是在牛客网上进行编写测试通过,并且在VS2015环境下进行测试通过;思路解读: 主要是将stack1作为主栈,将stack2作为辅栈,stack1作为push()压入队列的主要栈操作,如果是pop()弹出队列,则用stack2不断的接收stack1.top()栈顶的元素,压入栈中,这样直到把sta...原创 2018-08-19 14:33:53 · 787 阅读 · 0 评论 -
《剑指Offer》之旋转数组的最小数字
题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。注:本系列都是在牛客网在线编程测试通过,并且在VS2015上编译通过;思路分析; 这题还是相对很简单...原创 2018-08-19 15:20:17 · 185 阅读 · 0 评论 -
C++ 中的【vector学习】
本次只要是针对C++标准库(STL)中的向量Vector的学习,在C++中提供了一系列比较完善的标准库,通过对这些库的学习可以快速的实现算法的开发工作。先开一个标题,后期学习过程中随时添加新内容 Code:/* *本实验是学习向量vector的应用 主要实现动态数组的存储 *作者:att0206 *时间:2017/03/13*/#include<vector>#include<iost原创 2017-03-14 12:57:57 · 449 阅读 · 0 评论