- 博客(90)
- 资源 (1)
- 收藏
- 关注
原创 C++面经每日一更
封装:将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行 交互。多态依赖继承和重写,因为多态可以实现父类和子类调用同一个函数,产生不同的行为。面向对象是一种编程思想,把一切东西看成是一个个对象,把这些对象拥有的属性变量和操作这些属性变量函数打包成一个类来表示。多态:用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。继承:可以使用现有类的所有数据成员和函数成员功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
2023-11-28 00:39:46
341
3
原创 论文阅读-MLPD:Multi-Label Pedestrian Detector in Multispectral Domain(海康威视研究院实习项目)
MLPD
2022-07-25 22:28:15
2453
3
原创 读取文件名,生成txt目录。
读取文件名,生成txt目录。import os# get .txt documentrootdir=os.path.join('C:/Users/lishe/Desktop/data/shapenetcore_partanno_segmentation_benchmark_v0_normal/val')# readwrite_path=open('C:/Users/lishe/Desktop/write.txt','w')for (dirpath,dirnames,filenames) in o
2022-03-20 10:27:55
581
原创 conda配置环境下载速度过慢问题
添加镜像:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/conda config --set show_channel_urls yes
2022-03-16 21:57:23
1403
原创 leetcode48.旋转图像(中等)
第一种方法是auto一个临时的数组,然后操作。因为:class Solution {public: void rotate(vector<vector<int>>& matrix) { int n = matrix.size(); auto new_matrix = matrix; //auto被解释为一个自动存储变量的关键字,也就是申明一块临时的变量内存。 for(int i=0;i<n;i++){.
2022-02-19 11:22:49
408
原创 大数加法(中等)
class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 计算两个数之和 * @param s string字符串 表示第一个整数 * @param t string字符串 表示第二个整数 * @return string字符串 */ string solve(string s, string t) { // write code h.
2022-02-13 22:35:15
6575
原创 leetcode53. 最大子数组和(简单)
这是个锤子的简单题,一开始我用暴力解法写了一遍,双循环,但是有一个用例会超时,所以只能用动态规划来做:(答案当中还给了一个贪心,还没具体看)class Solution {public: int maxSubArray(vector<int>& nums) { int pre=0 , ans=nums[0]; for(const auto &x : nums){ pre = max( pre+x ,x );.
2022-02-10 22:01:29
197
原创 leetcode70.爬楼梯(简单)
题解的关键点就是f(x) = f(x-1) + f(x-2)也就是说第x阶楼梯的种数 是 x-1 和 x-2 阶的总和。class Solution {public: int climbStairs(int n) { // f(x) = f(x-1) + f(x-2) if(n==1 || n==2 || n==0){ return n; } int f[n+1]; f[0] = 0;
2022-02-10 21:12:24
272
原创 leetcode66.加一(简单)
本来想做个简单的题找找自信心,没想到把自己打击了。这么简单的问题都不会。。。。这个主要思想就是从后面进行遍历,遇到非9的就加一,然后后面的都变成0,如果全是9的话,就定义一个新的数组,变成10就好了。class Solution {public: vector<int> plusOne(vector<int>& digits) { int n=digits.size(); for(int i=n-1; i>=0;i--){
2022-02-10 20:27:37
6570
原创 leetcode36.有效的数独(中等)
这个题用哈希表做就可以,用哈希表记录每个元素出现的次数,然后用vector定义三个99,99,339的数组。用于判断行,列,小九宫格内元素出现的次数。class Solution {public: bool isValidSudoku(vector<vector<char>>& board) { vector<vector<int>> row(9,vector<int>(9)) ,col(9,vector<
2022-02-10 20:07:48
309
原创 leetcode33. 搜索旋转排序数组(二分查找)
上一个博客写的是暴力直接解出来了官方答案给出的是二分查找,时间复杂度比较低:class Solution {public: int search(vector<int>& nums, int target) { int n = nums.size(); if(n == 0){ return -1; } if(n == 1){ return nums[0] == .
2022-02-06 18:55:49
662
原创 leetcode33.搜索旋转排序数组
题目看着吓唬人,其实很简单,实际上就是返回数组中特定数字的下标值就行,这是我唯一一个随便就写出来的中等题,继续加油!class Solution {public: int search(vector<int>& nums, int target) { int len = nums.size(); int ans = -1; for(int i=0; i<len; i++){ if(nums[i]
2022-02-06 17:52:09
633
转载 maskrcnn训练自己的数据集——labelme生成Mask文件,opencv将16位灰度图片转化为8位(python代码)
#!/usr/bin/env python# _*_ coding: UTF-8 _*_# author:"hy""""使用skimage模块读取图片,不改变图片数据类型uint16,保存为uint8类型"""import osimport cv2import natsortimport numpy as npfrom skimage import iofrom matplotlib import pylab as pltinput_file = "C:/Users/lsh/Deskto
2022-02-03 00:08:16
529
原创 leetcode31.下一个排列
题目描述直接截图的leetcode解题思路:c++代码如下所示class Solution {public: void nextPermutation(vector<int>& nums) { int n = nums.size(); int i = n-2; while(i>=0 && nums[i]>=nums[i+1]){ i--; }
2022-01-28 11:24:58
818
原创 leetcode29.两数相除(中等)
两数相除:给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3输出: 3解释: 10/3 = truncate(3.33333…) = trunca
2022-01-28 00:30:48
480
原创 leetcode24.两两交换链表中的节点
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。class Solution {public: ListNode* swapPairs(ListNode* head) { ListNode* dummy = new ListNode(0); // 0-> 1 -> 2 -> 3 ->4 // pre cur next d
2022-01-27 15:37:50
997
原创 leetcode19.删除链表中的倒数第N个结点
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。class Solution {public: ListNode* removeNthFromEnd(ListNode* head, int n) { int len=0; ListNode* newOne = new ListNode(0,head); while(head) { head = head->next;
2022-01-26 21:33:19
544
原创 数字转罗马数字
继上一篇写的,又看到了一个比较简洁的方法:class Solution {public: string intToRoman(int num) { int values[]={1000,900,500,400,100,90,50,40,10,9,5,4,1}; string reps[]={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"}; string res;
2022-01-25 20:27:52
5654
原创 leetcode12. 整数转罗马数字(中等)
贴一个之前写的罗马数字转整数:https://blog.csdn.net/toCVer/article/details/122421123?spm=1001.2014.3001.5501罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M
2022-01-25 20:24:09
167
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人