自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(141)
  • 资源 (2)
  • 收藏
  • 关注

原创 BEVDET论文与代码解读

bevdet论文解读

2023-03-19 15:38:03 1187 1

原创 kitti数据集理解及可视化

kitti数据集理解及可视化

2023-01-10 22:40:22 1853

原创 LSS-lift splat shoot论文与代码解读

LSS BEV

2022-10-02 12:45:36 5193 6

原创 细粒度分类之NTS_NET解读

1.序言细粒度分类的提出是为了解决相似类别之间的分类问题,基本的思路是找到对于相似类别有区分性的区域块,结合这些具有丰富信息的区域块特征更加有效的进行相似类别的分类。这里分享细粒度分类里面较为经典的NTS_NET,数据集使用stanford car,代码已经在我的github更新提交。NTS_NET代码2.论文解读论文提出NTS_NET由三种功能网络构成:navigator,teacher,scrutinizer。2.1 navigatornavigator在海事专业里面称为领航员,是领导航线

2022-02-26 08:34:54 1257

原创 python中的装饰器

序言python中的装饰器作用是提高代码复用性,可用于注册各种func,这里做一下记录。代码简单装饰器def logger(func): print("2平方根是:", func(2))@loggerdef func_tmp(x=2): return x**2传参装饰器def loggerv2(x): def operater(func): print("%d平方根是:"%x,func(x)) # return func r

2022-02-18 10:55:56 167

原创 register_hook和register_forward_hook记录

序言在模型剪枝,模型量化以及模型中间层分析过程中都需要一个hook来得到中间结果。这里记录torch的register_hook和register_forward_hook两种方法。register_hookregister_hook是为了获取反向计算的梯度值。def get_grad(grad): print("backward grad is:", grad)x = 2w = torch.randn((2, 1), requires_grad=True)print("init w

2022-02-17 20:54:55 1146

原创 刷题汇总-100

面试题目链接快速排序快速排序Box计算Box计算NMS计算NMS实现Leetcode题目链接反转链表反转链表寻找第k大的数寻找第k大的数牛客

2022-02-07 08:38:50 156

原创 编辑距离(二)

题目描述给定两个字符串str1和str2,再给定三个整数ic,dc和rc,分别代表插入、删除和替换一个字符的代价,请输出将str1编辑成str2的最小代价。数据范围:0≤∣str1∣,∣str2∣≤5000,0≤ic,dc,rc≤10000要求:空间复杂度 O(n),时间复杂度 O(nlogn)思路动态规划,上面对应删除,左边对应添加,左上对应替换。每次更新都要考虑最小代价。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可##

2022-01-31 15:04:00 357

原创 子数组最大乘积

题目描述给定一个double类型的数组arr,其中的元素可正可负可0,返回连续子数组累乘的最大乘积。数据范围:数组大小满足 0≤n≤10,数组中元素满足 ∣val∣≤10进阶:空间复杂度 O(1) ,时间复杂度 O(n)思路分治思想,最小的有可能变最大的,当前状态也可能是最大的,所以维护三个状态,当前最大,当前状态,当前最小。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param arr double浮点型一维数组

2022-01-31 09:37:43 109

原创 把二叉树打印成多行

题目描述给定一个节点数为 n 二叉树,要求从上到下按层打印二叉树的 val 值,同一层结点从左至右输出,每一层输出一行,将输出的结果存放到一个二维数组中返回。例如:给定的二叉树是{1,2,3,#,#,4,5}该二叉树多行打印层序遍历的结果是[[1],[2,3],[4,5]]数据范围:二叉树的节点数 0≤n≤1000,0≤val≤1000要求:空间复杂度 O(n),时间复杂度 O(n)思路层次遍历代码python版本:# class TreeNode:# def __ini

2022-01-30 23:55:30 108

原创 数据流中的中位数

题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。数据范围:数据流中数个数满足 1≤n≤1000 ,大小满足 1≤val≤1000进阶: 空间复杂度 O(n) , 时间复杂度 O(nlogn)思路用一个容器来存储放出来的数,然后对这个容器进行排序,排序后返

2022-01-30 05:27:50 121

原创 牛客-旋转数组

题目描述一个数组A中存有 n 个整数,在不允许使用另外数组的前提下,将每个整数循环向右移 M( M >=0)个位置,即将A中的数据由(A0 A1 ……AN-1 )变换为(AN-M …… AN-1 A0 A1 ……AN-M-1 )(最后 M 个数循环移至最前面的 M 个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?数据范围:0<n≤100,0≤m≤1000进阶:空间复杂度 O(1),时间复杂度 O(n)思路看作一个队列,需要出去多少人,出去的又进入开始位置。代码

2022-01-30 05:02:01 205

原创 牛客-最大正方形

题目描述给定一个由’0’和’1’组成的2维矩阵,返回该矩阵中最大的由’1’组成的正方形的面积,输入的矩阵是字符形式而非数字形式。数据范围:矩阵的长宽满足 0≤n≤20,矩阵中的元素属于 {‘1’,‘0’}思路动态规划,主要是转移公式。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## 最大正方形# @param matrix char字符型二维数组 # @return int整型#class Solution: de

2022-01-29 18:19:03 200

原创 二进制中1的个数

题目描述输入一个整数 n ,输出该数32位二进制表示中1的个数。其中负数用补码表示。数据范围:−2147483648<=n<=2147483647思路求余数,如果是正数,余数为1就加一,负数要按位取反,遇见0了用32-1。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param n int整型 # @return int整型#class Solution: def NumberOf1(sel

2022-01-29 12:39:35 130

原创 数组中的逆序对

题目描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P mod 1000000007数组中所有数字的值满足 0≤val≤1000000要求:空间复杂度 O(n),时间复杂度 O(nlogn)思路采用了暴力解法,超时。没做出来。。。。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @para

2022-01-29 11:45:56 118

原创 牛客-寻找峰值

题目描述给定一个长度为n的数组nums,请你找到峰值并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个所在位置即可。思路只要某个峰比旁边两个峰高就可以了,找出这个峰的索引就行。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param nums int整型一维数组 # @return int整型#class Solution: def findPeakElement(self , nums: Li

2022-01-29 07:59:01 281

原创 牛客-兑换零钱

题目描述给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数,求组成aim的最少货币数。如果无解,请返回-1.数据范围:数组大小满足 0≤n≤10000 , 数组中每个数字都满足 0<val≤10000,0≤aim≤5000要求:时间复杂度 O(n×aim) ,空间复杂度 O(aim)。思路采用动态规划的思路一步步走,要凑到11块钱,考虑凑11-1 11-2 11-5块需要多少个硬币。代码pyth

2022-01-29 07:41:32 209

原创 链表中倒数最后k个结点

题目描述输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。如果该链表长度小于k,请返回一个长度为 0 的链表。数据范围:0≤n≤100≤k≤10要求:空间复杂度 O(n),时间复杂度 O(n)进阶:空间复杂度 O(1),时间复杂度 O(n)思路先遍历一遍知道链表的长度,知道倒数的第k个位置在哪里,然后再正序找就行了。代码python代码:# class ListNode:# def __init__(self, x):#

2022-01-28 20:40:57 148

原创 没有重复项数字的全排列

题目描述给出一组数字,返回该组数字的所有排列例如:[1,2,3]的所有排列如下[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2], [3,2,1].(以数字在数组中的位置靠前为优先级,按字典序排列输出。)数据范围:数字个数 0<n≤6要求:空间复杂度 O(n!) ,时间复杂度 O(n!)思路全排列的问题直接使用深度优先遍历代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @para

2022-01-28 06:10:31 834

原创 集合的所有子集(一)

题目描述现在有一个没有重复元素的整数集合S,求S的所有子集注意:你给出的子集中的元素必须按升序排列给出的解集中不能出现重复的元素数据范围:1≤n≤5,集合中的任意元素满足 ∣val∣≤10要求:空间复杂度 O(n!),时间复杂度 O(n!)思路采用深度优先遍历的方法,主要是要过滤重复元素,并且在每一次搜索层都要将结果保存。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param S int整型一维数组 # @

2022-01-28 05:56:51 167

原创 牛客-最大数

题目描述给定一个长度为n的数组nums,数组由一些非负整数组成,现需要将他们进行排列并拼接,每个数不可拆分,使得最后的结果最大,返回值需要是string类型,否则可能会溢出。数据范围:1≤n≤100,0≤nums[i]≤10000进阶:时间复杂度O(nlogn) ,空间复杂度:O(n)思路首先将每一个数字转化为字符串,这样做拼接方便一些。第一种方法考虑深度优先搜索,得到所有的元素的全排列。第二种是采用冒泡排序的方法,两两组合比较。代码python版本:## 代码中的类名、方法名、参数名已

2022-01-24 07:55:56 446

原创 环形链表的约瑟夫问题

题目描述编号为 1 到 n 的 n 个人围成一圈。从编号为 1 的人开始报数,报到 m 的人离开。下一个人继续从 1 开始报数。n-1 轮结束以后,只剩下一个人,问最后留下的这个人编号是多少?数据范围: 1≤n,m≤10000进阶:空间复杂度 O(1),时间复杂度 O(n)思路前进m-1步,删除所在的值继续走代码python版本:# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param n int整型 # @param m int整型

2022-01-23 14:38:51 79

原创 牛客-字符串变形

题目描述对于一个长度为 n 字符串,我们需要对它做一些变形。首先这个字符串中包含着一些空格,就像"Hello World"一样,然后我们要做的是把这个字符串中由空格隔开的单词反序,同时反转每个字符的大小写。比如"Hello World"变形后就变成了"wORLD hELLO"。数据范围: 1≤n≤10 , 字符串中包括大写英文字母、小写英文字母、空格。进阶:空间复杂度 O(n) , 时间复杂度 O(n)输入描述:给定一个字符串s以及它的长度n(1 ≤ n ≤ 10^6)返回值描述:请返

2022-01-23 08:12:43 662

原创 二叉搜索树的第k个节点

题目描述给定一棵结点数为n 二叉搜索树,请找出其中的第 k 小的TreeNode结点值。1.返回第k小的节点值即可2.不能查找的情况,如二叉树为空,则返回-1,或者k大于n等等,也返回-13.保证n个节点的值不一样数据范围: 0≤n≤1000,0≤k≤1000,树上每个结点的值满足0≤val≤1000进阶:空间复杂度 O(n),时间复杂度 O(n)思路先序遍历,然后存储节点值,然后排序,然后判断index是否有越界,没有越界的话返回对应位置的值,有越界返回-1.代码python版本:

2022-01-23 07:51:39 158

原创 数组中的最长连续子序列

题目描述给定无序数组arr,返回其中最长的连续序列的长度(要求值连续,位置可以不连续,例如 3,4,5,6为连续的自然数)数据范围:1≤n≤10 ,数组中的值满足 1≤val≤10要求:空间复杂度 O(n),时间复杂度 O(nlogn)思路先转化为set去重,再排序,然后每一段连续序列计算长度,记录最长的长度。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## max increasing subsequence# @param

2022-01-22 16:45:40 238

原创 Kmeans算法

序言kmeans是无监督学习算法之一,通过随机选择设置的k哥聚类中心,对每一个训练样本计算到k个聚类中心的距离,选择最近距离的一个中心将样本分配给他,最后对每一个聚类中心聚到一起的样本求均值得到新的聚类中心,新的聚类中心和旧的聚类中心之间做差,如果差小于我们设定的最小距离,那么就找到了聚类中心,没有就继续更新。代码import numpy as npfrom copy import deepcopyclass Kmeans(object): """ Kmeans Algorith

2022-01-21 17:26:40 822

原创 牛客-二分查找-II

题目描述请实现有重复数字的升序数组的二分查找给定一个 元素有序的(升序)长度为n的整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的第一个出现的target,如果目标值存在返回下标,否则返回 -1数据范围:0≤n≤100000进阶:时间复杂度O(logn) ,空间复杂度O(n)思路二分代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## 如果目标值存在返回下标,否则返回 -1# @param nu

2022-01-20 08:11:22 126

原创 牛客-回文数字

题目描述在不使用额外的内存空间的条件下判断一个整数是否是回文。回文指逆序和正序完全相同。进阶: 空间复杂度 O(1),时间复杂度 O(len(n))思路转换为字符串判断就行了代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param x int整型 # @return bool布尔型#class Solution: def isPalindrome(self , x: int) -> bool:

2022-01-20 07:53:26 126

原创 最长公共前缀

题目描述给你一个大小为 n 的字符串数组 strs ,其中包含n个字符串 , 编写一个函数来查找字符串数组中的最长公共前缀,返回这个公共前缀。数据范围: 0≤n≤5000,进阶:空间复杂度 O(n),时间复杂度 O(n)思路找到最短的字符串,然后一个位置一个位置的对比。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param strs string字符串一维数组 # @return string字符串#clas

2022-01-20 07:42:03 185

原创 加起来和为目标值的组合(二)

题目描述给出一组候选数 c 和一个目标数 t ,找出候选数中起来和等于 t 的所有组合。c 中的每个数字在一个组合中只能使用一次。注意:题目中所有的数字(包括目标数 t )都是正整数组合中的数字要按非递减排序结果中不能包含重复的组合组合之间的排序按照索引从小到大依次比较,小的排在前面,如果索引相同的情况下数值相同,则比较下一个索引。要求:空间复杂度 O(n!) , 时间复杂度 O(n!)思路深度优先遍历,参考全排列。可选状态要设定好。代码python版本:## 代码中的类名

2022-01-19 08:30:28 479

原创 二叉树中和为某一值的路径(一)

题目描述给定一个二叉树root和一个值 sum ,判断是否有从根节点到叶子节点的节点值之和等于 sum 的路径。1.该题路径定义为从树的根结点开始往下一直到叶子结点所经过的结点2.叶子节点是指没有子节点的节点3.路径只能从父节点到子节点,不能从子节点到父节点4.总节点数目为n思路和之前一样,到达路径结尾的时候判断,并且回溯的时候删除路径。代码python版本:# class TreeNode:# def __init__(self, x):# self.va

2022-01-19 07:21:41 320

原创 有重复项数字的所有排列

题目描述给出一组可能包含重复项的数字,返回该组数字的所有排列。结果以字典序升序排列。数据范围: 0<n≤8 ,数组中的值满足 −1≤val≤5要求:空间复杂度 O(n!),时间复杂度 O(n!)思路全排列问题,用深度优先搜素就可以了。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可## # @param num int整型一维数组 # @return int整型二维数组#class Solution: def

2022-01-19 07:15:56 634

原创 删除有序链表中重复的元素-I

题目描述删除给出链表中的重复元素(链表中元素从小到大有序),使链表中的所有元素都只出现一次例如:给出的链表为1→1→2,返回1→2.给出的链表为1→1→2→3→3,返回1→2→3.数据范围:链表长度满足 0≤n≤100,链表中任意节点的值满足 ∣val∣≤100进阶:空间复杂度 O(1),时间复杂度 O(n)思路将节点值保存下来,然后去重,再排序。代码python版本:# class ListNode:# def __init__(self, x):# s

2022-01-18 07:40:06 180

原创 牛客-重排链表

题目将给定的单链表L 0 →L 1→…→L n−1→L n重新排序为:L 0→L n→L 1 →L n−1→L 2 →L n−2 →…要求使用原地算法,不能只改变节点内部的值,需要对实际的节点进行交换。数据范围:链表长度 0≤n≤20000 ,链表中每个节点的值满足 0≤val≤1000要求:空间复杂度 O(n) 并在链表上进行操作而不新建链表,时间复杂度 O(n)进阶:空间复杂度 O(1) , 时间复杂度 O(n)思路找到中点,然后断开,将后面的链表反转,然后插入到前面的链表中。代码

2022-01-18 07:30:07 262

原创 数字字符串转化成IP地址

题目现在有一个只包含数字的字符串,将该字符串转化成IP地址的形式,返回所有可能的情况。例如:给出的字符串为"25525522135",返回[“255.255.22.135”, “255.255.221.35”]. (顺序没有关系)数据范围:字符串长度 0≤n≤12要求:空间复杂度 O(n!),时间复杂度 O(n!)注意:ip地址是由四段数字组成的数字序列,格式如 “x.x.x.x”,其中 x 的范围应当是 [0,255]。思路直接暴力解决了代码python版本:## 代码中的类名、

2022-01-17 22:30:20 1739

原创 牛客-顺时针旋转矩阵

题目描述有一个NxN整数矩阵,请编写一个算法,将矩阵顺时针旋转90度。给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转后的NxN矩阵。数据范围:0<n<300,矩阵中的值满足 0≤val≤1000要求:空间复杂度 O(n2),时间复杂度 O(n2)进阶:空间复杂度 O(1),时间复杂度 O(n2)思路镜像对称两次就好了,一次是关于主对角线镜像交换值,一次是关于中轴镜像交换值。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即

2022-01-17 08:26:30 325

原创 牛客-括号生成

题目描述给出n对括号,请编写一个函数来生成所有的由n对括号组成的合法组合。例如,给出n=3,解集为:“((()))”, “(()())”, “(())()”, “()()()”, “()(())”数据范围:0≤n≤10要求:空间复杂度 O(n!),时间复杂度 O(n!)思路第一时间想到了全排列的问题,所以这道题也用深度优先搜索的方法来做,设定一个当前状态和可用状态,然后递归。代码python版本:## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可##

2022-01-17 07:38:54 205

原创 牛客-对称的二叉树

题目描述给定一棵二叉树,判断其是否是自身的镜像(即:是否对称)。数据范围:节点数满足0≤n≤1000,节点上的值满足∣val∣≤1000要求:空间复杂度 O(n),时间复杂度 O(n)备注:你可以用递归和迭代两种方法解决这个问题思路用递归来解决,判断左子树的根节点和右子树的根节点值是不是相同,判断左子树的右子树和右子树的左子树是不是相同,同时左子树的左子树和右子树的右子树是不是相同。代码python版本:# class TreeNode:# def __init__(se

2022-01-16 18:18:32 85

原创 二叉树中的最大路径和

题目描述二叉树里面的路径被定义为:从该树的任意节点出发,经过父=>子或者子=>父的连接,达到任意节点的序列。注意:1.同一个节点在一条二叉树路径里中最多出现一次2.一条路径至少包含一个节点,且不一定经过根节点给定一个二叉树的根节点root,请你计算它的最大路径和最优路径是:2=>1=>3,或者3=>1=>2,最大路径和=2+1+3=6数据范围:节点数满足 0≤n≤10000 ,节点上的值满足 ∣val∣≤1000要求:空间复杂度 O(1),时间复杂度 O

2022-01-16 12:31:06 837

原创 链表的奇偶重排

题目描述给定一个单链表,请设定一个函数,将链表的奇数位节点和偶数位节点分别放在一起,重排后输出。注意是节点的编号而非节点的数值。数据范围:节点数量满足 0≤n≤10 ,节点中的值都满足 0≤val≤1000要求:空间复杂度 O(n),时间复杂度 O(n)思路将结点值根据位置分别放在奇偶列表,然后合并重建链表。、代码python版本:# class ListNode:# def __init__(self, x):# self.val = x#

2022-01-16 07:35:01 377

nvidia-dali-0.0.1.dev4.tar.gz

朱大佬用

2021-02-19

python实现520表白程序的exe文件下载

python实现的520表白程序,利用turtle库画一幅表白图,场景是一颗树、有落叶、有诗和远方。

2020-05-20

空空如也

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

TA关注的人

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