自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Yee's Blog

就算是个普通人也不能放弃挣扎啊少女!

  • 博客(27)
  • 收藏
  • 关注

原创 Python调用C++代码(含OpenCV cv::Mat转换 传输数据)

简介Python因为编写简单、易用而被广泛使用,但是其效率比较低下。尤其是在计算机视觉、图像处理领域,C++调用GPU,相对于Python可能是10倍以上的提速。一些开源的算法通常是使用C++来实现。经常会有需求需要快速用Python实现一个项目,然后其中要调用一段C++代码。本方法使用了一个开源库,pyboostcvconverter,这个C++库被编译后,会生成.so,在.so路径下,就可...

2019-11-06 17:47:57 4281 2

原创 LintCode 16. Permutations II

Permutation的进阶题。此题给的List里是有重复元素的,也就意味着用全排列的方式,可能会有重复的排列,那么怎么规避掉重复的排列呢,我们可以为重复元素标号,比如:[1, 2, 2, 3, 4, 4, 5] 标号后为:[1, 2(1), 2(2), 3, 4(1), 4(2), 4(3), 5]我们在搜索的时候,强制要求,本来排序靠前的重复元素,在排列后,必须依旧靠前,如:[2(1...

2019-11-05 10:38:25 155

原创 LintCode 15. Permutations

典型搜索题,搜索题主要有两个,Subsets子集和Permutation全排列。模板题,递归搜索,要注意记忆模板,遇到相似题改写即可。class Solution {public: /* * @param nums: A list of integers. * @return: A list of permutations. */ vector&...

2019-11-04 23:47:40 99

原创 LintCode 814. Shortest Path in Undirected Graph

这道图是图里BFS的经典题!算最短路,其实就是分层BFS(分层BFS的关键就是每次for一下queue的大小,一层一层的pop出元素,便可以用一个变量记录层深)亦可以用一个hash表,来记录distance。/** * Definition for Undirected graph. * struct UndirectedGraphNode { * int label; * ...

2019-11-04 21:21:52 109

原创 LintCode 127. Topological Sorting

有向图的拓扑排序,主要应用是“判断图中是否有环”计算每个节点的入度,即有几个点指向它将入度为0的点删掉,然后将其相邻的neighbor的入度减一不断重复2步骤,如最后剩下点表示有环,如无环则不会剩下点本题让求任意的拓扑排序,以下解题步骤:遍历点,用Hashmap记录每个点的入度将入度为0的所有点加入队列q不断pop队列构造排序,将相关点入度减一,重复加入当前入度为0的点直到队...

2019-11-04 20:43:52 79

原创 LintCode 137. Clone Graph

需要掌握图的表示方法,图分为两种常见表示:邻接表,邻接矩阵。主要有一个neighbors的vector来存所有邻居的信息遇到图的题,要遍历图,一般选择BFS,因为宽度优先遍历可以用队列实现,不会发生栈溢出的情况遇到图的题,要遍历图,需要一个Hashmap,因为图可能有环,尤其对于无向图,为了避免二次访问,Hashmap非常重要需要记忆,c++中Hashmap用unordered_map来表...

2019-11-04 20:15:11 145

原创 LintCode 363. Trapping Rain Water

两指针问题。需要生成左右两个指针,不断靠近,直到碰到一起。需要有lheight,rheight分别记录:从左遍历到当前左指针位置的最大值和从右遍历到当前右指针位置的最大值,因为这个最大值减当前值,是能蓄水的高度。左、右指针的位置,谁先动,是由谁的最大值更低决定的,谁低谁动(相当于水位高度有另一个指针位置能挡住,便可以不断累加当前指针蓄水量到结果)class Solution {publ...

2019-11-04 19:25:27 108

原创 LintCode 113. Remove Duplicates from Sorted List II

删除掉所有的重复节点,遍历寻找时分两种情况:相邻两个节点不同,即crt和crt->next的值不同重复节点有多个时,要用while不断寻找到不重复的节点。需要注意的是while内是否有可能访问空指针,需要在条件中判断是否为空/** * Definition of singly-linked-list: * class ListNode { * public: * i...

2019-10-31 19:11:35 62

原创 LintCode 141. Sqrt(x)

本题很简单,二分法,用二分法模板即可。需非常注意,mid*mid可能会很大导致溢出,所以要用long型而非int型。class Solution {public: /** * @param x: An integer * @return: The sqrt of x */ int sqrt(int x) { long start ...

2019-10-31 19:05:57 84

原创 LintCode 6. Merge Two Sorted Arrays

LintCode 6. Merge Two Sorted Arrays题意理解Merge two given sorted ascending integer array A and B into a new sorted integer array.题意理解很简单的题,没有要求不能使用额外空间,就用两个指针分别从头往后比较A,B两个数组,一个个将数组组建起来。class Solution...

2019-10-23 00:00:13 243

原创 LintCode 2. Trailing Zeros

LintCode 2. Trailing Zeros题意分析Write an algorithm which computes the number of trailing zeros in n factorial.题意分析n!末尾含零的个数,这个题关键在于n!有多少5,2*5=10,每凑成一对就多一个0,2的个数远比5多,所以关键是找5.可以列出几个例子来观察一下:1 * 2 * 3 ...

2019-10-22 23:37:23 161

原创 MobileNet V2-SSD 检测头数目解析

mbox_loc:从6层feature map出来的prior box的相对位置结果(x, y, w, h)的拼接idlayer namesizeoutput numbox numtotal1conv5_mbox_conf_flat38*384 / 1638x38x4=57762conv11_mbox_conf_flat19*196 / 24...

2019-09-19 18:52:55 1119 1

原创 LintCode 372. Delete Node in a Linked List

Implement an algorithm to delete a node in the middle of a singly linked list, given only access to that node.这道题跟想象的不一样,以为输入给的节点时head,其实不是,而是你要删除的那个点,所以,方法是,将下一个点的值赋予此点,然后删除下一个点。/** * Definition o...

2019-04-27 00:40:42 231

原创 LintCode 450. Reverse Nodes in k-Group

每K个node翻转一次,最后一组不够K个的不翻转。有多种方法实现。我本来理解的题意是不够K个的有几个翻转几个,在写完代码后才发现最后不够K个不翻转,所以,我最后改了改,实现的是,每一组都翻转,不够K个的时候由翻转后的再翻转回来。实际上一开始就可以写成不够K个不翻转,代码有点冗余了。/** * Definition of singly-linked-list: * class ListNo...

2019-04-27 00:40:31 104

原创 LintCode 105. Copy List with Random Pointer

A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null.涉及到deep copy,采用Hashmap最简单,此题还有一种巧妙地解法,有时要求让用O(1)复杂度,就需要此巧妙解法。方法一: H...

2019-04-25 23:04:55 100

原创 LintCode 104. Merge K Sorted Lists

Merge k sorted linked lists and return it as one sorted list.Analyze and describe its complexity.方法一:用最小堆(用C++ STL的priority_queue)方法:将k个列表的头加入到最小堆,最小堆可以用O(1)的时间pop出最小元素,作为合并列表的第一项,被pop出的元素所对应的list的...

2019-04-25 20:05:28 81

原创 LintCode 170. Rotate List

Given a list, rotate the list to the right by k places, where k is non-negative.找倒数第k-1个位置和倒数第k个位置(注意k可能大于链表长,这里大于则循环链表找)这里用快慢指针的方法找,快指针比慢指针先走k步,然后两个指针每次一步一起走,快指针到达尾部时,慢指针位置是倒数第k的位置。找到后,根据链接关系链接...

2019-04-25 00:07:13 118

原创 LintCode 102. Linked List Cycle

Given a linked list, determine if it has a cycle in it.O(1)空间要求,用快慢指针,若有环,快慢指针必回相交,这是一个追击问题。若无空间要求,可以用Hashmap/** * Definition of singly-linked-list: * class ListNode { * public: * int val;...

2019-04-24 23:59:19 218

原创 LintCode 99. Reorder List

Given a singly linked list L: L0 → L1 → … → Ln-1 → Lnreorder it to: L0 → Ln → L1 → Ln-1 → L2 → Ln-2 → …找到中点,将List分成两半,left和right翻转right合并两个List注意:拆开两个链表,不要忘了mid->next=NULL找中点:方法一:遍历一遍记录长度...

2019-04-24 23:56:35 110

原创 LintCode 98. Sort List

Sort a linked list in O(n log n) time using constant space complexity.这个时间复杂度一看就是用二分法之类的方法来做merge sort的思想来做(递归)把List斩成两半(找中点)左边排序,右边排序把两个排好序的List merge到一起mid->next = NULL不要忘,很重要/** ...

2019-04-24 23:01:21 127

原创 LintCode 96. Partition List

Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.类似于快速排序的一部分,只不过由数组变成了链表比数组更简单,直接分成两根链表,一根left记录小于x的点,一根right记录大于等于x的点注意...

2019-04-24 22:29:19 101

原创 LintCode 36. Reverse Linked List II

Reverse a linked list from position m to n.翻转的是链表的其中一部分首先要知道m前一个node在哪儿从这后面开始一步步翻转,翻转到n停止关键是记录m_prev,n_node, n_prev的位置,因为最后一步要将翻转的链表连接起来注意,m可能为1,头结点可能被翻转,所以头前加dummy node,便利翻转。/** * Defini...

2019-04-24 21:36:51 64

原创 LintCode 35. Reverse Linked List

Reverse a linked list.翻转链表。链表基础操作之一,必须熟练。prev和next轮番操作prev初始化为NULL(因为是链表尾)需要熟记翻转每一个node的过程:先构造temp,之后等号右边是下一个等号的左边(首尾相接,跟a、b交换类似)随后返回prev,prev是翻转后链表的头部ListNode * temp = crt->next;crt->nex...

2019-04-24 21:26:52 66

原创 LintCode 113. Remove Duplicates from Sorted List II

Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.重复的node要删得一个都不剩因为重复可能从head就开始,相当于head有可能会被删除,此时需要构造dummy node在头部,以便利he...

2019-04-24 21:14:54 97

原创 LintCode 112. Remove Duplicates from Sorted List

Given a sorted linked list, delete all duplicates such that each element appear only once.删除重复node,重复值node保留一个。两个指针,prev,crt(分别指向前一个node,当前node)当遇到crt和prev相等时,crt不断往后找到不相等的那个位置,然后一次性删掉中间重复的node/...

2019-04-24 21:09:30 48

原创 LintCode 452. Remove Linked List Elements

题意:删除指定值的node。非常基础的链表操作,”删除“。注意链表操作,往往需要crt,prev两个指针,指向当前node和当前node的前一个node。小技巧:考虑第一个head节点会不会被操作,因为是删除,第一个节点有可能被删除,所以需要在头部加上dummy node/** * Definition of singly-linked-list: * class ListNode...

2019-04-24 20:46:59 120

原创 Linux服务器上(无sudo权限)用cmake方式编译Caffe MobileNet SSD

移动设备上做目标检测,Mobilenet+SSD是一个很好的选择,因项目需求需要在一个库比较老的服务器上安装,踩了不少坑,特此记录一下,以供参考。安装环境:服务器上没有给除管理员外的个人sudo权限, 服务器是RedHat系统(商业版CentOs)服务器上安装有一些依赖库,但版本较老或者缺失一些依赖,无法成功配置caffe,不能使用sudo和apt-get无脑安装需要的各种依赖,需要手动源...

2019-04-15 16:30:59 1241

空空如也

空空如也

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

TA关注的人

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