- 博客(37)
- 收藏
- 关注
原创 【算法与数据结构】 [非递归] 二叉树的先序遍历、中序遍历、后序遍历
二叉树的先序遍历public int[] preorderTraversal (TreeNode root) { List<Integer> list = new ArrayList<>(); Stack<TreeNode> stack = new Stack<>(); while (!stack.empty() || root!=null){ while (root!=null){
2022-05-17 22:49:55 287
原创 【操作系统】页式存储管理、段式存储管理、段页式存储管理
页式存储管理概念:将内存空间分成大小相等的若干分区,每个分区就是一个页框。将用户进程的地址空间也分为与页框大小相等的若干页。操作系统以页框位单位为各个进程分配内存空间。进程中的每个页分配到一个页框中。寻址过程: 通过逻辑地址计算出页号和页内偏移。通过页号和页表计算出所在页框的首地址。通过页框的首地址和页内偏移就可以找到实际的物理地址。完成逻辑地址到物理地址的转换过程优点: 可以极大的提高内存的利用效率,没有外部碎片缺点:不方便按照逻辑模块实现信息的共享和保护段式存储管理概念: 将内存空间按照逻
2022-05-04 10:16:35 2364
原创 排-序-算-法
几个常见的排序算法1.堆排序public class 堆排序 { public static void main(String[] args) { int[] arr= new int[30]; Random r = new Random(); for (int i = 0; i < arr.length; i++) { arr[i] = r.nextInt(100); } Syste
2022-05-03 15:37:14 411
原创 【数据结构与算法】【动态规划】 目标和
**思路:**可以转换以下思路先求出数组的总和 sum然后选定几个数的和为neq,得到关系 neq+target = sum-neq所以neq = (sum-target)/2;题目就可以转为中数组中选择几个数,和为neq;使用动态规划来解决这个问题:dp[i][j]表示从前i个数里面选择后得到总和为j的个数。代码class Solution { //可以使用0-1背包问题解决 public int findTargetSumWays(int[] nums, int.
2022-04-11 15:48:15 704
原创 【第 288 场周赛】T1【数字处理】6037. 按奇偶性交换后的最大数字
对数字进行处理的时候,最好是将它转换成字符串/字符数组处理。class Solution { public int largestInteger(int num) { String s = ""+num; List<Character> list1 = new LinkedList<>(); List<Character> list2 = new LinkedList<>(); for.
2022-04-10 13:12:23 133
原创 【leecode周赛】【优先队列】 K 次增加后的最大乘积
给你一个非负整数数组 nums 和一个整数 k 。每次操作,你可以选择 nums 中 任一 元素并将它 增加 1 。请你返回 至多 k 次操作后,能得到的 nums的 最大乘积 。由于答案可能很大,请你将答案对 109 + 7 取余后返回。题目链接贪心思想:每次加1就相当于把最小的数拿出来+1+1结果减去不+1结果所得到的值,就是去掉+1的那个数后所有数相乘的结果。所用到的数据结构为:优先队列使用场景:每次从总取出最大或者最小的数。public int maximumProduct(i
2022-04-10 12:12:22 515
原创 【算法与数据结构】旋转数组
class Solution { public boolean rotateString(String s, String goal) { /*判断一个字符串是否在另外一个字符串中出现 (s+s)就包含了所有的旋转可能了 */ return s.length()==goal.length() && (s+s).contains(goal); }}...
2022-04-07 08:54:14 419
原创 【数据结构与算法】动态规划 零钱兑换
第一种暴力 dfs 但是超时class Solution { int ans = -1; public int coinChange(int[] coins, int amount) { // dfs(coins,amount,0,0); return ans; } public void dfs(int[] coins, int amount, int index,int count) { if(index=..
2022-04-03 21:36:47 490
原创 【数据结构与算法】,【动态规划】 309. 最佳买卖股票时机含冷冻期
class Solution { public int maxProfit(int[] prices) { int[][] dp = new int[prices.length][3]; /** * dp[i][0]: 第i天 完成操作后 持有一只股票的最大收益 * dp[i][1]: 第i天 完成操作后 处于冷冻期的最大收益 * dp[i][2]: 第i天 完成操作后 既不处于冷冻期 也不持有股票的最大的收益.
2022-04-03 20:57:08 1048
原创 LRU算法
LRU算法利用到了HashMap<Integer,ListNode> map;和头尾指针的双向链表capacity用来记录容量get()时,首先判断map中是否有,没有直接返回-1.有的话将链表中的对应节点放入到头节点的nextput()时,判断map中是否有,有的话,只用将对应的节点提到头节点的next否则创建节点,并将节点放入到head的next中,并将信息放入到map中。放入时需要判断map的容量是否大于capacity,大于的话需要删除最后一个节点,并将对应的map删除。.
2022-03-29 21:29:59 529
原创 【动态规划】 单词拆分
class Solution { public boolean wordBreak(String s, List<String> wordDict) { Set<String> set = new HashSet<>(wordDict); //dp[i]表示以i结尾的字符串是否符合题目要求,符合为true boolean[] dp = new boolean[s.length()+1]; dp[0].
2022-03-29 19:46:23 95
原创 【Redis】redis的持久化方式之RDB
RDB简介: 简而言之就是读取redis中内容的快照。参考连接:Redis的持久化机制-RDB实现原理详解默认参数为save 900 1save 300 10save 60 10000第一个参数的意思就是900秒内有一次修改就执行一次快照。我们将参数设置为 save 60 5 表示60秒内修改5次就执行一次快照。RDB的缺点之一就是最后一次修改的记录可能丢失。比如说下面的情况 k1,k2,k3,k4,k5,k6是前60秒修改的,k7,a,b,c,d是后一分钟修改的,但是没有到60秒,没有
2022-03-27 17:34:08 1189 1
原创 【回溯】78. 子集
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。class Solution { List<List<Integer>> ans = new ArrayList<>(); List<Integer> t = new ArrayList<>(); public List<List<Integer>>
2022-03-26 17:51:05 113
原创 【回溯】78. 子集
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。class Solution { List<List<Integer>> ans = new ArrayList<>(); List<Integer> t = new ArrayList<>(); public List<List<Integer>>
2022-03-26 17:51:05 90
原创 172. 阶乘后的零
算法1:只需要统计阶层中质因子为2和5的个数即可,返回其中的最小值。https://leetcode-cn.com/problems/factorial-trailing-zeroes/给定一个整数 n ,返回 n! 结果中尾随零的数量。提示 n! = n * (n - 1) * (n - 2) * … * 3 * 2 * 1class Solution { public int trailingZeroes(int n) { int num2=0; int
2022-03-25 09:15:20 89
原创 48. 旋转图像
旋转图像给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。...
2022-03-24 19:00:00 98
原创 【双指针】 前缀 接雨水
思路:判断一个地方能不能接到雨水,需要判断两侧最高的柱子是否都大于当前柱子的高度所以第一步先求出 1到n-2两侧的最大高度,使用前缀遍历 1~n-2 如果两侧的高度都大于当前高度,就可以接到雨水.class Solution { public int trap(int[] height) { int ans = 0; int n = height.length; int[] leftmax = new int[n]; int[
2022-03-23 17:29:02 89
原创 八大排序算法
快速排序public class QuickSort { public static void main(String[] args) { Random random = new Random(); int[] arr= new int[20]; for(int i=0;i<arr.length;i++){ arr[i] = random.nextInt(100); } for (int
2022-03-20 21:26:41 722
原创 进制的转换
进制的转换将其他的类型转换为字符转 String s = x+" "; //x为任意类型字符串转换为整数Integer i1 = Integer.valueOf("100"); //将字符串"100"为10进制数 100Integer i2 = Integer.valueOf("100", 2); //将二进制字符串"100"转换为10进制数 4将其他进制数转换为10进制Integer i = Integer.valueOf(x+"",radix) // 将radix进制数x转换为10
2021-09-04 09:40:20 99
原创 maven基础知识
B站黑马程序员视频资源第一章 Maven简介Maven是什么?maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)POM(project object model):项目对象模型Maven的作用项目构建:提供标准的,跨平台的自动化项目构建方式.依赖管理:方便快捷的管理项目依赖的资源(jar包),避免资源间的版本冲突问题统一开发结构:提供标准的,统一的项目结构.配置MAVEN环境第一步找到下载的MAVEN包解压![image-202109
2021-09-03 17:20:01 53
原创 算法笔记 剑指 Offer 12. 矩阵中的路径
DFS剑指 Offer 12. 矩阵中的路径参考题解链接本题是典型的矩阵搜索问题 解决方式为DFS(深度优先搜索)和剪支深度优先搜索 可以理解从当前的点的四个方向进行DFS剪支: 当遇到 下标越界或者目标字符匹配不成功(例如:此矩阵元素和目标字符不同、此元素已被访问)则应立即返回,称之为 可行性剪枝 。DFS分析:递归参数 横坐标 i ,纵坐标j,当前目标匹配字符索引k,匹配字符串word,终止条件return false;下标越界当前字符被访问过 (访问过的字符可
2021-08-30 20:37:41 82
翻译 安装工具篇
Linux环境下centos 系统如何安装 yum 工具?https://newsn.net/say/centos-yum.htmlCentOS7最小安装, 误删RPM,修复方案https://blog.csdn.net/youngfubiao/article/details/78130823
2021-08-26 17:41:45 51
原创 01论文笔记CVPR2020 Spatial-Temporal Graph Convolutional Network for Video-based Person Re-identification
[参考csdn笔记](https://blog.csdn.net/weixin_51138870/article/details/110876347) 为了解决遮挡问题和视觉相似的负样本问题.作者将连续帧之间的信息进行互补,行人的结构信息作为额外的区分线索,对不同帧之间的时间关系和帧内的空间关系进行建模.提出了新的时空图卷积神经网络(STGCN). ![在这里插入图片描述](https://img-blog.csdnimg.cn/33268b50baab42d48c13a4aa38ba053b.png.
2021-08-26 16:06:28 260
原创 LeetCode 1. 两数之和【哈希表】 Java版 题解
LeetCode 1. 两数之和【 数组 + 哈希表 】 C++ 和 Java版 题解给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回
2021-08-26 08:36:29 184
转载 2020Spatial-Temporal Graph Convolutional Network for Video-based Person Re-identification论文笔记(时空图卷积)
转载自https://zhuanlan.zhihu.com/p/400749226本篇论文发表在CVPR 2020,作者将图卷积这种方法用在了行人重识别领域(基于视频的ReID),作者单位分别为:中山大学、鹏程实验室、香港中文大学、华为诺亚方舟实验室等单位!我找了很多图卷积相关的论文,发现GCN应用在ReID领域的论文真的比较少,大多用在社交网络或者知识图谱等领域吧,难怪我导师说GCN近两年才变得比较火,是一种很好的方法,希望让我深入调研一下用到行人方面(好难)!【摘要】基于视频的ReID问题:遮挡
2021-08-25 13:57:41 558
原创 谷粒学院前台登录流程
谷粒学院前台登录流程登录验证部分第一步 前台输入账号密码第二步 后端验证首先判断手机号是否存在其次判断密码是否正确再判断账号是否被禁用验证通过后,利用 JwtUtils 工具生成 JwtToken 返回//登录成功 String jwtToken = JwtUtils.getJwtToken(mobileMember.getId(), mobileMember.getNickname()); return jwtToken;第三步 登录成功后前端
2021-08-25 11:05:45 605
转载 linux安装 jdk1.8
软件下载地址链接:https://pan.baidu.com/s/1OjYzSLC-2Mg-ys1d6GuW2Q提取码:0216安装教程
2021-08-24 22:07:43 68
原创 第三章 HTTP报文内的HTTP信息(HTTP图解笔记)
第 三 章 HTTP 报文内的 HTTP 信息3.1 HTTP报文用于 HTTP 协议交互的信息被称为 HTTP 报文。请求端的叫请求报文,响应端的叫响应报文.HTTP 报文大致可分为报文首部和报文主体两块。通常,并不一定要有报文主体。3.2 请求报文及响应报文的结构3.3 编码提升传输速率3.3.1 报文主体和实体主体的差异报文是HTTP通信的基本单位.实体.作为请求或响应的有效载荷数据被传输,其内容由实体首部和实体主体组成.通常,报文主体等于实体主体。只有当传输中进行编码操作时,
2021-08-24 18:32:41 149
原创 第二章 简单的HTTP协议 (HTTP图解笔记)
第二章 简单的HTTP协议2.1 HTTP 协议用于客户端和服务器端之间 的通信请求访问文本或图像等资源的一端称为客户端,而提供资源响应的一端称为服务器端。2.2 通过请求和响应的交换达成通信HTTP协议规定,请求从客户端发出,最后服务器响应请求并返回.服务器在没有收到请求之前是不会发送任何响应的.Get:表示请求访问服务器的类型,称之为方法./index.htm:请求访问的资源对象 (请求URI)HTTP/1.1 : HTTP的协议号综合来看,这段请求内容的意思是:请求访问某台 HT
2021-08-24 17:36:03 154
原创 typora 修改上传图片的路径到阿里云oss
如何修改typora上传图片的位置当我们使用typora上传图片时,会自动的将图片保存到本地的位置.如下图所示[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mvKUwsPe-1629788946924)(E:/csdn%E6%96%87%E7%AB%A0/typora%E4%BF%AE%E6%94%B9%E4%B8%8A%E4%BC%A0%E5%9B%BE%E7%89%87%E7%9A%84%E4%BD%8D%E7%BD%AE%E5%88%B0%E9%98%BF%E9%8
2021-08-24 15:10:01 316
原创 第一章 了解web及网络基础(HTTP图解阅读笔记)
第一章 了解web及网络基础1.1 使用 HTTP 协议访问 WebWeb 使用一种名为 HTTP(HyperText Transfer Protocol,超文本传输协 议 1)的协议作为规范,完成从客户端到服务器端等一系列运作流 程。而协议是指规则的约定。可以说,Web 是建立在 HTTP 协议上通 信的。1.2 HTTP 的诞生CERN(欧洲核子研究组织)的蒂姆 • 伯纳斯 - 李(Tim BernersLee) 博士提出了一种能让远隔两地的研究者们共享知识的设想.1.3 网络基础 TCP/I
2021-08-24 14:25:58 118
原创 Spring 动态代理实例
动态代理Rentpublic interface Rent { public void rent();}Hostpublic class Host implements Rent{ @Override public void rent() { System.out.println("房东要出租房子....."); }}ProxyInvocationHandler作用:用于得到代理角色public class ProxyInvocation
2021-03-06 10:23:11 150
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人