自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 leetcode刷题思路-----前缀树

leetcode刷题思路-----前缀树对于大家来说,树并不陌生。以二叉树为例,它类似于链表一样将节点之间进行链接。而前缀树,是一种意义上的多叉树,它的信息反倒是存在所谓next指针上的。(来自力扣宫水三叶)1. 从二叉树到前缀树如何创建一个树呢?//基本上是如此创建的class TreeNode{ int val; TreeNode left; TreeNode right; TreeNode(){} TreeNode(int x){ val = x; }}那么类似的

2022-05-24 19:50:56 180

原创 面试题深入思考04-----排序的稳定性与你写的真的稳定吗?

面试题深入思考04-----排序的稳定性与你写的真的稳定吗?1. 排序的稳定性各大排序的稳定性(侵删)1.1 什么是稳定排序?简单一句概括,对于待排数组的相同数值元素(以值的排序为例),排序后其相对位置不变。那么稳定的排序有什么用吗?大多数情况下本身每用,但就如大家所说,如果待排数组本身就是某种意义上的有序,再按照其他意义排序时,原先意义的顺序再新顺序下仍有意义。例如:对于按照价格高到低排序的数组,再按销量进行重新排序,那么相同销量下的元组,还是拥有一个价格高到低的顺序。2. 你写的排序真

2022-05-23 16:12:18 146

原创 leetcode刷题思路(前传)---- 那些需要知道的简单API

leetcode刷题思路(前传)---- 那些需要知道的API对于leetcode中的问题,对很多需要处理的输入输出,格式,类型转换等进行一个总结。1. 数组简单的遍历:for(int i=0; i<nums.length; i++);for(int num : nums);Arrays工具类://排序(底层是快速排序,源码可参考博文:)Arrays.sort(nums);//实现Comparator接口实现自定义排序Arrays.sort(nums,(o1,o2)->o1

2022-05-05 21:40:33 193

原创 leetcode刷题思路-----二分查找

leetcode刷题思路-----二分查找基本模板二分需要纯纯模板,不要再因题制宜的写了,越多越混。直接一个固定的模板,所有的都写一个,对结果再特判。public class MyBinarySearch { public static void main(String[] args) { //对于一个有序数组 int[] nums = new int[]{2,3,4,5,5,5,7}; //查找一个小于最小的数,返回0 System.o

2022-05-05 16:29:09 681

原创 leetcode刷题思路-----单调栈

leetcode刷题思路-----单调栈

2022-05-03 21:55:15 208

原创 leetcode刷题思路-----排序

leetcode刷题思路-----排序对于排序来说,在力扣要求时间复杂度比较高的情况下,以及面试的来说,本文分享三种高频的排序方法模板:快速排序,归并排序,堆排序。1. 快速排序快速排序也有分治的思想,每趟排序选第一个(默认)为基准值,将小于的放在左侧,大于的放在右侧。随后分治处理左右两侧。public class MyQuickSort { public static void main(String[] args) { int[] nums = new int[]{2,3

2022-05-02 12:00:03 298

原创 leetcode刷题思路-----链表

leetcode刷题思路-----链表1. 基本模板单链表的问题没什么模板,大家按照自己习惯都有各自的方法去删除,插入等。对于力扣的问题也没有太难的题,都是基本的方法的组合,比如从反转链表到k个一组反转链表,合并两个链表到合并k个有序链表,我们从最基本的开始。建立ListNode类public class ListNode { int val; ListNode next; public ListNode(){} //给两个有参构造,方便建立普通节点和哨兵节点

2022-04-29 20:42:04 363

原创 leetcode刷题思路-----二叉树

leetcode刷题思路-----二叉树对于二叉树基本就两种遍历形式,bfs与dfs。基本模板1.dfs相对简单,但复杂的dfs都以其为基础://dfs private static void dfs(TreeNode root){ if(root==null){ return; } dfs(root.left); //中序遍历 System.out.print(root.val+" ")

2022-04-27 17:33:43 96

原创 leetcode刷题思路-----回溯

leetcode刷题思路-----回溯对于回溯问题的主要思路在于找出回溯路径,最经典的就是排列和组合的问题。主要模板 private void backtrace1(int[] nums){ //何时取出何时的结果 if("符合条件"){ res.add("将这次结果加入解集"); return; } //在可选的集合中循环来取,加入当前路径 for(int i=0; i< nu

2022-04-25 19:49:31 299

原创 leetcode刷题思路-----背包

leetcode刷题思路-----背包背包问题一直是比较头疼的一类算法,但按照模板来走,比较简单。以零钱兑换为例,其本质还是dp的状态转换。1.基本思路 int[][] dp = new int[coins.length+1][amount+1]; //初始化状态 for(int i=; i<=; i++){ dp[0][] = ; dp[][0] = ; } //先遍历硬币,再遍历里面的总数

2022-04-23 20:55:16 957

原创 面试题深入思考02-----万恶的HashMap

面试题深入思考02-----万恶的HashMap对于HashMap的面试题属于热点问题了,今天来简单记录一下。1.基本的底层原理对于HashMap来说,底层就是数组,链表和红黑树。在JDK1.8之前是没有红黑树的,基本就是所谓的拉链法解决Hash冲突。1.1基本的参数设置:static final int DEFAULT_INITIAL_CAPACITY = 1 << 4;//默认初始大小static final int MAXIMUM_CAPACITY = 1 << 3

2022-04-16 21:18:47 645

原创 面试题深入思考01-----Arrays.sort()与Collections.sort()

面试题深入思考01-----Arrays.sort()与Collections.sort()1.Collections.sort();Collections本质是关于集合的一种工具类。其中包含对集合的各种api,例如排序,反转,交换和复制等。其中sort方法提供两种入参形式:public static <T extends Comparable<? super T>> void sort(List<T> list) { list.sort(null)

2022-04-12 21:28:44 88

原创 高斯滤波以及边缘提取

高斯滤波和边缘信息1 什么是高斯滤波?2 高斯滤波实际效果3 利用高斯滤波提取边缘信息1 什么是高斯滤波?可以参考文章:高斯滤波2 高斯滤波实际效果原图:高斯滤波后:3 利用高斯滤波提取边缘信息通过原图减去高斯滤波后的图像可以得到含有边缘信息的图片完整代码:https://github.com/chenhy2116/gaosi/blob/main/gaosi3.py...

2021-10-06 17:16:27 866

原创 深度学习模型可视化1

深度学习模型的可视化1一、可视化特征层二、使用步骤1.引入库2.加入在特征层之后三.CAM通道注意力热图1.相关知识2.实际操作3.效果图一、可视化特征层我是直接加在网络中的代码段,对特征层直接取出来,进行可视化。二、使用步骤1.引入库基本上是这几个库:import matplotlib.pyplot as pltimport numpy as npimport cv22.加入在特征层之后代码如下: #取出当前的feat res = [] feature_map

2021-10-05 16:54:20 756

空空如也

空空如也

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

TA关注的人

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