自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 资源 (4)
  • 收藏
  • 关注

原创 堆排序(大顶堆、小顶堆)

**1、什么是堆?**堆是一种非线性结构,(本篇随笔主要分析堆的数组实现)可以把堆看作一个数组,也可以被看作一个完全二叉树,通俗来讲堆其实就是利用完全二叉树的结构来维护的一维数组按照堆的特点可以把堆分为大顶堆和小顶堆大顶堆:每个结点的值都大于或等于其左右孩子结点的值小顶堆:每个结点的值都小于或等于其左右孩子结点的值(堆的这种特性非常的有用,堆常常被当做优先队列使用,因为可以快速的访问到“最重要”的元素)**2、堆的特点(数组实现)**我们对堆中的结点按层进行编号,将这种逻辑结构映射到

2020-08-14 19:59:19 1957 1

原创 1177. 构建回文串检测

给你一个字符串 s,请你对 s 的子串进行检测。每次检测,待检子串都可以表示为 queries[i] = [left, right, k]。我们可以 重新排列 子串 s[left], …, s[right],并从中选择 最多 k 项替换成任何小写英文字母。如果在上述检测过程中,子串可以变成回文形式的字符串,那么检测结果为 true,否则结果为 false。返回答案数组 answer[],其中...

2019-09-05 17:12:19 563

原创 设计getMin功能的栈

题目描述实现一个特殊功能的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。输入描述:第一行输入一个整数N,表示对栈进行的操作总数。下面N行每行输入一个字符串S,表示操作的种类。如果S为"push",则后面还有一个整数X表示向栈里压入整数X。如果S为"pop",则表示弹出栈顶操作。如果S为"getMin",则表示询问当前栈中的最小元素是多少。输出描述:对于每个getM...

2019-09-05 11:47:47 135

原创 不重复打印排序数组中相加和为给定值的所有二元组

1.二分 2.vector find 3.set find,顺序#include <set>#include <vector>#include <algorithm>#include <iostream>using namespace std;int64_t binarySearch(int start,int end,vector&...

2019-09-05 10:06:27 387

原创 【网易】字符迷阵

题目描述字符迷阵是一种经典的智力游戏。玩家需要在给定的矩形的字符迷阵中寻找特定的单词。在这题的规则中,单词是如下规定的:在字符迷阵中选取一个字符作为单词的开头;选取右方、下方、或右下45度方向作为单词的延伸方向;以开头的字符,以选定的延伸方向,把连续得到的若干字符拼接在一起,则称为一个单词。以图1为例,如果要在其中寻找单词"WORD",则绿色框所标示的都是合法的方案,而红色框所标示...

2019-09-04 14:51:41 130

原创 【网易】塔

题目描述小易有一些立方体,每个立方体的边长为1,他用这些立方体搭了一些塔。现在小易定义:这些塔的不稳定值为它们之中最高的塔与最低的塔的高度差。小易想让这些塔尽量稳定,所以他进行了如下操作:每次从某座塔上取下一块立方体,并把它放到另一座塔上。注意,小易不会把立方体放到它原本的那座塔上,因为他认为这样毫无意义。现在小易想要知道,他进行了不超过k次操作之后,不稳定值最小是多少。输入描述:第...

2019-09-04 14:18:58 269

原创 【网易】牛牛的背包问题

题目描述牛牛准备参加学校组织的春游, 出发前牛牛准备往背包里装入一些零食, 牛牛的背包容量为w。牛牛家里一共有n袋零食, 第i袋零食体积为v[i]。牛牛想知道在总体积不超过背包容量的情况下,他一共有多少种零食放法(总体积为0也算一种放法)。输入描述:输入包括两行第一行为两个正整数n和w(1 <= n <= 30, 1 <= w <= 2 * 10^9),表示零食...

2019-09-04 10:15:28 211

原创 【网易】会话列表

题目描述小云正在参与开发一个即时聊天工具,他负责其中的会话列表部分。会话列表为显示为一个从上到下的多行控件,其中每一行表示一个会话,每一个会话都可以以一个唯一正整数id表示。当用户在一个会话中发送或接收信息时,如果该会话已经在会话列表中,则会从原来的位置移到列表的最上方;如果没有在会话列表中,则在会话列表最上方插入该会话。小云在现在要做的工作是测试,他会先把会话列表清空等待接收信息。当接收...

2019-09-04 09:33:51 97

原创 【网易】牛牛的闹钟

题目描述牛牛总是睡过头,所以他定了很多闹钟,只有在闹钟响的时候他才会醒过来并且决定起不起床。从他起床算起他需要X分钟到达教室,上课时间为当天的A时B分,请问他最晚可以什么时间起床输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含一个正整数,表示闹钟的数量N(N<=100)。接下来的N行每行包含两个整数,表示这个闹钟响起的时间为Hi(0<=A<24)时Mi(0&...

2019-09-03 16:58:01 103

原创 【网易】数对

题目描述牛牛以前在老师那里得到了一个正整数数对(x, y), 牛牛忘记他们具体是多少了。但是牛牛记得老师告诉过他x和y均不大于n, 并且x除以y的余数大于等于k。牛牛希望你能帮他计算一共有多少个可能的数对。输入描述:输入包括两个正整数n,k(1 <= n <= 10^5, 0 <= k <= n - 1)。输出描述:对于每个测试用例, 输出一个正整数表示可能的...

2019-09-03 15:02:51 115

原创 【网易】丰收

题目描述又到了丰收的季节,恰逢小易去牛牛的果园里游玩。牛牛常说他对整个果园的每个地方都了如指掌,小易不太相信,所以他想考考牛牛。在果园里有N堆苹果,每堆苹果的数量为ai,小易希望知道从左往右数第x个苹果是属于哪一堆的。牛牛觉得这个问题太简单,所以希望你来替他回答。输入描述:第一行一个数n(1 <= n <= 105)。第二行n个数ai(1 <= ai <= 1...

2019-09-03 11:18:18 88

原创 【网易】瞌睡

题目描述小易觉得高数课太无聊了,决定睡觉。不过他对课上的一些内容挺感兴趣,所以希望你在老师讲到有趣的部分的时候叫醒他一下。你知道了小易对一堂课每分钟知识点的感兴趣程度,并以分数量化,以及他在这堂课上每分钟是否会睡着,你可以叫醒他一次,这会使得他在接下来的k分钟内保持清醒。你需要选择一种方案最大化小易这堂课听到的知识点分值。输入描述:第一行 n, k (1 <= n, k <= 1...

2019-09-03 09:58:02 167

原创 【网易】俄罗斯方块

题目描述小易有一个古老的游戏机,上面有着经典的游戏俄罗斯方块。因为它比较古老,所以规则和一般的俄罗斯方块不同。荧幕上一共有 n 列,每次都会有一个 1 x 1 的方块随机落下,在同一列中,后落下的方块会叠在先前的方块之上,当一整行方块都被占满时,这一行会被消去,并得到1分。有一天,小易又开了一局游戏,当玩到第 m 个方块落下时他觉得太无聊就关掉了,小易希望你告诉他这局游戏他获得的分数。输入...

2019-09-02 16:13:45 99

原创 【京东】最长区间

题目描述拉齐有一个01序列,他可以对这个序列进行任意多次变换,每次变换都是把序列的最后若干个元素放到最前面,例如:010011,将最后3个元素011放到最前面,序列变为011010。所有变换结束后,拉齐需要挑出一个全为1的连续区间,要求最大化区间长度。输入描述:共一行,一个01串,仅包含0或1。序列长度不超过50000。输出描述:一个整数,表示最长区间的长度。示例1输入11011...

2019-09-02 15:45:22 213

原创 【网易】牛牛找工作

题目描述为了找到自己满意的工作,牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作。在牛牛选定了自己的工作后,牛牛的小伙伴们来找牛牛帮忙选工作,牛牛依然使用自己的标准来帮助小伙伴们。牛牛的小伙伴太多了,于是他只好把这个任务交给了你。输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含两个正整数,分别表示工作的数量N(N<=...

2019-09-02 14:44:08 91

原创 LeetCode

#include <iostream>#include <vector>#include <algorithm>#include <unordered_map>#include <string>using namespace std;class Solution {private: double returnMedia...

2019-08-23 15:46:40 85

原创 两数之和

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]思路:采用哈希表时注...

2019-08-15 19:17:03 58

原创 error LNK2019: 无法解析的外部符号

首先观察错误信息:1>sift_gpu.lib(GLTexImage.obj) : error LNK2001: 无法解析的外部符号 __imp_glReadPixels经上网查阅__imp_glReadPixels为OpenGL32.lib的函数,此处无法解析说明项目缺少该lib解决措施:1、“项目-属性-库目录”添加路径C:\Program Files (x86)\Microso...

2019-05-12 23:36:37 1847

原创 C++大学教程第九版索引

1.C++程序的六个阶段 p112.内存的概念 p423.为类提供默认构造函数的方法 p614.C++三种控制结构 p795.存储类别和存储期 p1676.函数调用堆栈和活动记录 p1727.c++11的unsigned long long p1878.const修饰的指针(四种) p2609.Const对象和const成员函数 p30110.友元函数和友元类11.第十一章十二...

2019-04-25 15:24:43 254

原创 STL之map

map是一种关联式容器。map底层机制是RB-Tree,所以几乎map所有的操作都是调用红黑树的操作。map的特性是,所有元素都会根据元素的键值自动被排序。map的所有元素那是pair,同时拥有实值(value)和键值(key),**pair的第一元素被视为键值,第二元素被视为实值。**map不允许两个元素拥有相同的键值。下面是pair的定义:template <class T1,c...

2019-04-11 14:14:43 628

原创 STL之list

list同样是序列式容器,可排序但是未排序。list和vector相比较,list的优点是每次插入或删除一个元素,就会分配或释放一个元素都空间。因此,list对空间的运用有绝对的精准,一点儿也不浪费。而且,list对于任何位置的元素的插入或移除,时间复杂度永远是常数级。下面我们从节点、迭代器、list结构、list 的constructor, push_back, insert、list元素的...

2019-04-10 14:17:04 148

原创 STL之vector

vector的迭代器虽然封装了指针,但是判断一个迭代器是不是空,不能直接利用NULL或nullptr,而是利用iterator!=vector.end()具体参照下面代码,这是一个查找的操作,it指向了1的位置,而notFind没有找到合适的位置。 vector<int> test = {9,9,1,2,3}; vector<int>::iterator it ...

2019-04-10 10:35:41 84

原创 正则表达式匹配

题目描述请实现一个函数用来匹配包括’.‘和’‘的正则表达式。模式中的字符’.‘表示任意一个字符,而’'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"abaca"匹配,但是与"aa.a"和"ab*a"均不匹配思路:解这题需要把题意仔细研究清楚,反正我试了好多次才明白的。首先,考虑特殊情况:1>两...

2019-04-05 15:39:10 119

原创 713. 乘积小于K的子数组

给定一个正整数数组 nums。找出该数组内乘积小于 k 的连续的子数组的个数。示例 1:输入: nums = [10,5,2,6], k = 100输出: 8解释: 8个乘积小于100的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。需要注意的是 [10,5,2] 并不是乘积小于100的子数组。说明:0 <...

2019-03-30 15:41:37 248

原创 归并排序

归并排序:1.划分2.分治3.合并void Merge(int* data, int start, int mid, int end){ int* left_data = new int[mid - start + 1]; int* right_data = new int[end - mid]; int left_length = mid - start + 1; int ri...

2019-03-26 11:41:00 90

原创 逆序对问题(归并排序)--c++实现

题目描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007输入描述:题目保证输入的数组中没有的相同的数字数据范围:对于%50的数据,size<=10^4对于%75的数据,size<=10^5对于%100的数据,size&l...

2019-03-22 16:41:56 839

原创 前k个小的元素

假如有一个数组(无序),让你找出里面前k个小的元素,设计一个算法思路1:快速排序的思想,找出第k位置的元素,在此元素左边都比他小,输出即可,时间复杂度为O(n)思路2:查找前k小,构建最大值堆,先将k个元素构建一个最大值堆,然后再遍历剩余元素,若剩余元素比堆顶小,让堆顶等于这个小的元素,再调整一下位置,这样遍历结束,前k个最小的元素都在堆中了。时间复杂度O(n)下面将两个思路整合在一起了...

2019-03-15 13:29:26 276

原创 OGRE源码分析:场景树模块

引擎名称:OGRE 版本:1.11.5分析模块:场景树模块(Node,SceneNode,Bone,OctreeNode,TagPoint)引擎模块介绍本次分析是场景管理的一部分内容,及场景的组织方式(场景树),该模块的功能是将场景中所需要用到的对象存储起来,以节点、骨骼、八叉树等不同组织方式进行描述场景树。场景结构图如下:根节点的位置往往在场景的中心。每个节点对象都用数据成员保存相对于...

2019-03-14 17:18:06 1872

原创 2019网易笔记--最小覆盖圆

2019网易春招第三题,用到了类似最小覆盖圆的原理题目大致和这个题相同:【题目描述】H族的领地是一片富饶之地,有丰富的资源,无数的黄金。尽管异族侵略者被压制几百多年,他们并没有放弃对这片土地的渴望。最近,他们研制了一枚重磅炸弹。试图用它摧毁H族的防御工事。H族的防御工事由多个基地构成,侵略者试图用炸弹摧毁尽量多的防御基地,现在,他们急需你的帮助。如果你能为他们解决难题,会有巨大的奖励。(该炸...

2019-03-12 23:48:46 163

原创 2019腾讯春招笔试 最小覆盖子串

当时题目是以数字为字符串的例子,道理都一样,后来发现leecode上有这道题给定一个字符串 S 和一个字符串 T,请在 S 中找出包含 T 所有字母的最小子串。示例:输入: S = “ADOBECODEBANC”, T = “ABC”输出: “BANC”说明:如果 S 中不存这样的子串,则返回空字符串 “”。如果 S 中存在这样的子串,我们保证它是唯一的答案。思路:双指针的滑动窗...

2019-03-11 16:31:00 510

原创 120. 三角形最小路径和

给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。例如,给定三角形:[[2],[3,4],[6,5,7],[4,1,8,3]]自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。说明:如果你可以只使用 O(n) 的额外空间(n 为三角形的总行数)来解决这个问题,那么你的算法会很加分。思路:动态规划,从下往上,把每层从下往上...

2019-03-08 22:00:42 63

原创 移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。思路:双指针,将数组本身想象成第二个数组(结果数组),慢指针j只记录非零元素,快指针i无论是否非零都继续前进,最后将j剩下的元素全部设为0即可。这个过程就...

2019-03-04 17:51:01 75

原创 旋转数组

给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:输入: [-1,-100,3,99] 和 k...

2019-03-04 17:19:21 84

原创 CVTE笔试题2:生成zigzag矩阵

其几天参加的CVTE两道笔试题,第二道是生成zigzag矩阵,具体如下给定数组{1,2,3,4,5,6,7,8,9}输出【1,2,63,5,74,8,9】思路:考试的时候二维数组初始化和生成都是两个for,时间复杂度是N*N,下面改进了这一点,是时间复杂度达到了O(n)vector&amp;lt;vector&amp;lt;int&amp;gt;&amp;gt; to_ZigZagMatrix(vector&amp;...

2019-03-04 15:01:34 191

原创 CVTE笔试:最大数

CVTE的笔试题一共两道,其中一道是leecode上的最大数,具体题目如下给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。示例 1:输入: [10,2]输出: 210示例 2:输入: [3,30,34,5,9]输出: 9534330说明: 输出结果可能非常大,所以你需要返回一个字符串而不是整数。思路:总体思路是排序,但是要注意比较的时候,要比较(string)a+b...

2019-03-04 13:10:02 117

原创 887. 鸡蛋掉落

你将获得 K 个鸡蛋,并可以使用一栋从 1 到 N 共有 N 层楼的建筑。每个蛋的功能都是一样的,如果一个蛋碎了,你就不能再把它掉下去。你知道存在楼层 F ,满足 0 &lt;= F &lt;= N 任何从高于 F 的楼层落下的鸡蛋都会碎,从 F 楼层或比它低的楼层落下的鸡蛋都不会破。每次移动,你可以取一个鸡蛋(如果你有完整的鸡蛋)并把它从任一楼层 X 扔下(满足 1 &lt;= X &l...

2019-03-01 17:59:47 255

原创 712. 两个字符串的最小ASCII删除和

给定两个字符串s1, s2,找到使两个字符串相等所需删除字符的ASCII值的最小和。示例 1:输入: s1 = “sea”, s2 = “eat”输出: 231解释: 在 “sea” 中删除 “s” 并将 “s” 的值(115)加入总和。在 “eat” 中删除 “t” 并将 116 加入总和。结束时,两个字符串相等,115 + 116 = 231 就是符合条件的最小和。示例 2:输...

2019-02-27 11:48:47 119

原创 918. 环形子数组的最大和

给定一个由整数数组 A 表示的环形数组 C,求 C 的非空子数组的最大可能和。在此处,环形数组意味着数组的末端将会与开头相连呈环状。(形式上,当0 &lt;= i &lt; A.length 时 C[i] = A[i],而当 i &gt;= 0 时 C[i+A.length] = C[i])此外,子数组最多只能包含固定缓冲区 A 中的每个元素一次。(形式上,对于子数组 C[i], C[i+1]...

2019-02-27 10:51:56 158

原创 334. 递增的三元子序列

给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列。数学表达式如下:如果存在这样的 i, j, k, 且满足 0 ≤ i &amp;lt; j &amp;lt; k ≤ n-1,使得 arr[i] &amp;lt; arr[j] &amp;lt; arr[k] ,返回 true ; 否则返回 false 。说明: 要求算法的时间复杂度为 O(n),空间复杂度为 O(1) 。示例 1:输入: [1,...

2019-02-26 12:01:58 165

原创 90. 子集 II

给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: [1,2,2]输出:[[2],[1],[1,2,2],[2,2],[1,2],[]]思路:和之前一篇博客《子集》的思路差不多,算法相同,但是这次要去重,注意{1,4,4,4}和{4,1,4,4}set是不会去重的,所以要用sort排序class ...

2019-02-26 11:17:13 65

OSG示例代码.zip

解压后是OSG的一些简单示例代码,用户要部署好OSG的环境,直接运行就可以查看效果~~ 适合OSG入门并且有C++基础的同学学习使用~~

2020-03-03

Qt入门代码示例.zip

解压后是Qt一些简单的应用代码,每个代码示例都可以在Qt中直接运行~~~~ 适合有C++基础并且想学习Qt的同学,非常适合入门

2020-03-03

基于MFC的图像拼接(sift、surf、ORB、ferns算法)人脸检测

基于MFC的图像拼接(sift、surf、ORB、ferns算法)人脸检测,在release x64下。点击exe即可运行

2019-04-06

华南理工大学软件学院数字媒体第一次实验MFC

基于MFC实现了图片三阶插值的缩放和旋转,傅里叶变换,高斯噪声,高斯滤波,平滑线性滤波,维纳滤波。全程c++实现,没有调用opencv现有的函数

2018-10-29

空空如也

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

TA关注的人

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