自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (1)
  • 问答 (8)
  • 收藏
  • 关注

原创 455. Assign Cookies 分发饼干

题目分析:先将孩子的胃口和饼干的大小从小到大排序,然后从胃口小的孩子发饼干,遍历饼干的大小,分给所能满足当前孩子的最小的饼干.这里先用了2个sort函数排序,不知道有没有不需要排序的算法C++:int findContentChildren(vector<int>& g, vector<int>& s) { int count = 0; ...

2020-04-23 14:49:20 130

原创 349. Intersection of Two Arrays

题目分析:C++使用unordered set装入其中一个数组,然后和另一数组比较,得到相同的元素;python可以用&或者自带的函数,有用字典的方式,回头再做C++:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { unorder...

2020-04-21 15:21:02 177

原创 342. Power of Four

题目分析:直接位运算判断即可C++:bool isPowerOfFour(int num) { if (num <= 0) return false; if ((num & num - 1) != 0) return false; return (num & 0x55555555) == num; //判断...

2020-04-21 14:24:14 153

原创 283. Move Zeroes

题目分析:一次遍历数组,找到0的元素删除,然后再在末尾补上0即可C++:void moveZeroes(vector<int>& nums) { int len = nums.size(); for (int i = 0; i < len; i++){ if (nums[i] == 0){ nums.er...

2020-04-21 14:00:10 109

原创 219. Contains Duplicate II (set的一些小结)

题目分析:我们使用大小不超过k的unorderset来作为滑动窗口,比较窗口內是否有大小相等的元素c++:bool containsNearbyDuplicate(vector<int>& nums, int k) { //hashset<int> s; unordered_set<int> s; int len = n...

2020-04-20 15:58:44 109

原创 198. House Robber 打家劫舍

题目分析:动态规划就行,下面的链接我觉得解释的很详细,很适合学习https://leetcode-cn.com/problems/house-robber/solution/dong-tai-gui-hua-jie-ti-si-bu-zou-xiang-jie-cjavap/C++:int rob_optimization(vector<int>& nums...

2020-04-15 23:35:44 75

转载 python3 fixedint

python3中想要用int32,可以使用fixedint模块fixedint.UInt32( )中文文档见转载链接

2020-04-14 15:40:04 261

原创 190. Reverse Bits 颠倒二进制位

题目分析:将一个二进制的数颠倒过来,比如10010,输出01001。在写c++代码时,我把这个看作是十进制颠倒的原理,比如110,十进制情况下,每次%出最后一位然后相加。二进制,就只需要将% /的底数换成2就行。在python中,写同样的代码会有问题,python3中int位数不是固定32位,其实可以用fixedint模块,但是leetcode没有,所以就用同样的思想,一位位的取出来。C++:...

2020-04-14 15:33:24 182

原创 169. Majority Element 多数元素 (投票法原理的简单理解)

题目分析:找出超过半数的那个数,这里我用了投票法,投票法可以这么来理解,首先我们可以看作这一些数代表着不同班级的学生,现在要竞选最高人气的班级,每个班的学生自然就只会投赞成票给自己的班级,投反对票给其他班级,那么超过半数人数的那个班级就算减去其他班的反对票,依旧得票是正数,而其他班级的得票均一定为负数,这样就选出了超过半数的那个数C++:int majorityElement(v...

2020-04-10 18:02:57 314 1

原创 167. Two Sum II - Input array is sorted 两数之和

题目分析:在一串已经排好序的数组內找到2个和为target值的数。其实我们使用双指针就行,因为那两个数一定在这串数字里面,我们收尾各设置一个指针,两边靠近的过程中就一定能找到符合要求的数C++:vector<int> twoSum(vector<int>& numbers, int target) { int len = numbers.si...

2020-04-10 16:01:05 76

原创 155. Min Stack 最小栈

题目分析:定义一个类,有一些栈的操作,主要是要得到栈里面的最小值,我们直接用一个变量来保存目前栈里面的最小值就行。这里我们进出栈都需要比较栈顶元素和最小值的大小,以便实时更新栈中最小的值。C++:class MinStack {public: /** initialize your data structure here. */ MinStack() { ...

2020-04-10 00:45:41 73

原创 0136.single-number 只出现一次的数字

题目分析:找出一串数字中只出现一次的数字。有很多种方法,比如先排序,再22比较,不同的就是只出现一次的;还有用该数组的和的2被减去该数组的和,得到的就是那个数字,我选择的方法是异或,异或有交换律,因为只有一个数字是出现一次,其他都是2次,两个相同的数异或是0且,剩下的数字和0异或则为自身。C++:int singleNumber(vector<int>& num...

2020-04-08 22:17:51 90

原创 125. Valid Palindrome 验证回文串

题目分析:给定一个字符串,忽略大小写和数字,判断是否为回文串。即判断这个字符串从头看和从尾看都是一致的C++:bool isPalindrome(string s) { if(s.empty()) return true; string str; for(auto c : s) if(isalnum(c)) ...

2020-04-08 17:41:01 106

原创 122.Best Time to Buy and Sell Stock II 买卖股票的最佳时机 II

题目分析:我们要求的就是在一只股票中能获得的最大收益,其实可以简单理解为,只要买了之后第二天股票涨价了,我就可以买,只要买了之后第二天股票下跌,我就不买,即计算股价趋势图中每一段上升的差价总和。C++:int maxProfitII(vector<int>& prices) { if (prices.empty()) return 0; ...

2020-04-08 14:53:05 83

原创 Leetcode 121. Best Time to Buy and Sell Stock 买卖股票的最佳时机

题目分析:给定一只股票每天的价格,求能得到的最大利润。我们当然是想着以最低的价格时买入,最高的价格时卖出,这样能得到最大利益,如 3 1 7 5 2,1买入,7卖出,得到最的利润,但是存在这种情况,即2 8 1 6 4 5,我们可以看出来,2买入8卖出的时候才能得到最大利益,所以我们不能单纯的找最大最小值。但是我们可以从头开始一天天的看,遍历整个股票价格的波动过程。以minprice记录从第一天开...

2020-04-07 14:37:52 84

原创 88. Merge Sorted Array 合并两个有序数组

题目分析:将2个有序的数列合并成一个有序的数列。思路就是从2个数列的末尾开始看,比较哪个大,将最大的数作为合并到nums1的最后一位数,以此类推,遍历完其中一个数列结束,最后判断nums2是否为空来判断合并是否完成,因为全部合到nums1中,所以只需要判断nums2就行C++:这里有个用multiset的方法,利用容器的特点去解void merge(vector<int&...

2020-04-02 14:43:35 167

原创 53. Maximum Subarray

还有很多方法,以后回头刷的时候再试试其他的Kadane算法:https://zh.wikipedia.org/wiki/%E6%9C%80%E5%A4%A7%E5%AD%90%E6%95%B0%E5%88%97%E9%97%AE%E9%A2%98题目分析:给一串数字,输出 最大子数列的和C++:int maxSubArray(vector<int>&a...

2020-04-01 18:06:42 99

原创 YoloV3训练自己数据集精简流程,FLIR红外数据集(thermal dataset)训练

本文主要是简述如何训练自己的数据集,这里以FLIR的红外数据集为例,配置运行以及原理不再叙述1.修改Makefile这步一般已经在配置运行的时候已经做过了,没什么大问题2.将自己的数据集处理成yolo训练所需的数据集格式FLIR官方开源的数据集结构如下:这里的标签文件是一个json文件,而yolo需要的标签文件是txt文件,处理代码链接:https://blog.cs...

2020-04-01 15:34:29 5266 20

原创 Mac安装Homebrew 解决安装Homebrew慢的问题 安装wget

最近在安装homebrew的时候,遇到了一些问题,在这记录一下homebrew 官网:https://brew.sh/index_zh-cn.html1.

2020-03-31 18:40:00 1344 1

原创 FLIR数据集json文件转yolo格式txt (PS.coco数据集json文件转yolo格式txt)

最近使用FLIR开源红外数据集和yolo做训练,但是标签文件只有一个json文件,需要转为yolo需要的标签格式,代码如下:from __future__ import print_functionimport argparseimport globimport osimport jsonif __name__ == '__main__': # 命令行打印参数 ...

2020-03-31 00:29:35 4145 18

原创 26. Remove Duplicates from Sorted Array

题目分析:给出一串数字,找出这串数字所有不同数字的个数n,并且得到新的大小为n的集合包含这n个不同的数,要求空间复杂度为O(1)。代码分析:c++int removeDuplicates(vector<int>& nums) { if(nums.empty()) return 0; auto t1 = nums.begin(); //...

2020-03-26 20:18:39 53

原创 20. Valid Parentheses

题目分析:括号匹配的问题,使用栈就很容易实现代码分析:C++:bool isValid(string s) { stack<char> st; if (s.length() == 0) return false; for(char c : s){ if (c == '(' || c == '{' || c == '[')...

2020-03-24 20:55:29 73

原创 Pycharm/Clion : Cannot find reference 'xxx' in __init__.py

在pyhton中使用opencv的时候出现该问题,虽然不影响运行,但是imshow等函数不能自动补全以及提示错误等搞得很难受,所以不能坐视不理,最终我的解决方案如下:右键文件夹venv ,如图,设为Excluded,文件夹变成橘色,橘势大好,问题解决。个人情况问题是完美解决了,但是不是很懂什么原理,希望有明白的大佬指点一下,谢谢!...

2020-03-24 11:49:50 829

原创 Python openCV qt.qpa.plugin: could not find the qt platform plugin "cocoa" in ""

pip install opencv-python

2020-03-24 11:39:14 615

原创 575. Distribute Candies

题目分析:有偶数个糖果,哥哥和妹妹平分。数字代表糖果的种类,问妹妹最多有多少种类的糖果。首先妹妹最多只能有一半的糖果,如果糖果种类数少于糖果数的一半,那么妹妹能有全部种类的糖果,否则最多有一半糖果数量种类的糖果。即求一半数量的糖果和糖果种类哪个少。代码:int distributeCandies(vector<int>& candies) { int n...

2020-03-18 18:50:22 59

原创 LeetCode. 1217. Play with Chips

题目分析:只有当偶数(奇数)位数的薯片移动到奇数(偶数)位数是才会产生cost。偶数位置之间的移动和奇数位数之间的移动不会产生cost。知道这个前提,我们理清题目,i代表的是第i个薯片,而chips[i]中的值代表的是第i哥薯片目前的位置。所以我们可以先将偶数位置的薯片移到一起,奇数位置的薯片移到一起,再比较两边哪个数量少,即为我们所需要的最少cost,即求数组中奇数和偶数数量较少的那个一个的数量...

2020-03-17 22:46:17 91

原创 ubuntu18.04下配置ROS,arm64架构(ubuntu18.04)配置ROS以及部分坑点解决

ROS的配置整体来说并不难,坑点也不多,主要在源这块(个人情况而言),下面详细说说一.配置源一般情况下配置:sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sour...

2020-03-17 14:33:15 4170 3

原创 解决arm64架构下误删apt-get装回问题

因为安装aptitude误删了apt-get,好不容易找到了arm架构下的安装包,不用刷机了。deb包下载网址:https://ubuntu.pkgs.org/18.04/ubuntu-updates-main-arm64/apt_1.6.12_arm64.deb.html...

2020-03-17 11:17:30 1194 2

原创 解决Macos下 github 打开 下载 速度慢问题

1.打开hosts文件进行修改(键入“i”进行修改)sudo vim /etc/hosts2.在hosts文件下面插入下面的ip地址(按esc退出修改,键入“:” “wq” 保存修改并退出)192.30.253.112 github.com151.101.185.194 github.global.ssl.fastly.netps. ip地址查询网站:https://ww...

2020-03-16 21:41:46 372

原创 Mac中设置clion字体,界面等

第一次使用Mac,初始clion等字体太小,但是Mac中等设置方式和windows,ubuntu里面等不太一样,设置不在File->Settings->Editor->General->Appearance中。在Mac中,设置方式为:1.点击左上角的Clion2.点击preferences3.剩下的步骤和其他的一样,不再赘述。...

2020-01-14 23:28:25 1756

原创 Mac上因为破解pycharm,clion失败导致无法打开软件的问题

在Mac上,首先我们要知道当前自己的路径,在命令行中输入下面的命令defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES然后我们就可以看到当前我们位置的路径,如图:图中我已经给出了修改文件的地址,涂黑的部分是个人用户名,pycharm对应的为pycharm的文件夹,位置和clion是一样的,然后打开cl...

2020-01-14 22:27:40 2130 4

原创 faster-rcnn在ubuntu环境下的配置以及demo运行

深度学习 faster-rcnn

2016-08-26 15:36:58 1094

brew_install.sh

用来安装homebrew的脚本,方便因为网络问题无法下载的人,已经修改源为清华源,无法使用请更换源,详情请看博客

2020-03-31

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

TA关注的人

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