自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 org.springframework.mail.MailAuthenticationException: Authentication failed 解决方法

原文链接:https://blog.csdn.net/weixin_45992021/article/details/115061337。2、程序中所填的邮箱密码是否为开通pop3/smtp服务时所给的授权码。1,检查自己邮箱是否开通pop3/smtp服务。

2024-03-27 21:31:15 1049

原创 代码随想录算法训练营 第14天 part03 | 二叉树的迭代遍历

那么再看看中序遍历,中序遍历是左中右,先访问的是二叉树顶部的节点,然后一层一层向下访问,直到到达树左面的最底部,再开始处理节点(也就是在把节点的数值放进result数组中),这就造成了处理顺序和访问顺序是不一致的。分析一下为什么刚刚写的前序遍历的代码,不能和中序遍历通用呢,因为前序遍历的顺序是中左右,先访问的元素是中间节点,要处理的元素也是中间节点,所以刚刚才能写出相对简洁的代码,前序遍历是中左右,每次先处理的是中间节点,那么先将根节点放入栈中,然后将右孩子加入栈,再加入左孩子。层序遍历一个二叉树。

2024-03-24 16:04:43 484

原创 代码随想录算法训练营第14天 part02 | 二叉树的递归遍历

写完了递归算法, 运行的时候,经常会遇到栈溢出的错误,就是没写终止条件或者终止条件写的不对,操作系统也是用一个栈的结构来保存每一层递归的信息,如果递归没有终止,操作系统的内存栈必然就会溢出。: 确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数, 并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。: 确定每一层递归需要处理的信息。在这里也就会重复调用自己来实现递归的过程。

2024-03-18 19:50:13 322

原创 代码随想录算法训练营第14天 part01 | 二叉树理论基础篇

C++中map、set、multimap,multiset的底层实现都是平衡二叉搜索树,所以map、set的增删操作时间时间复杂度是logn,注意我这里没有说unordered_map、unordered_set,unordered_map、unordered_set底层实现是哈希表。最后再说一说二叉树中深度优先和广度优先遍历实现方式,我们做二叉树相关题目,经常会使用递归的方式来实现深度优先遍历,也就是实现前中后序遍历,使用递归是比较方便的。若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;

2024-03-18 16:17:54 850

原创 Springer latex期刊模板 LaTeX 设置图片caption左对齐

Springer latex期刊模板小坑

2024-03-11 16:35:00 829

原创 代码随想录算法训练营| 栈与队列总结篇

所以大家经常说的大顶堆(堆头是最大元素),小顶堆(堆头是最小元素),如果懒得自己实现的话,就直接用priority_queue(优先级队列)就可以了,底层实现都是一样的,从小到大排就是小顶堆,从大到小排就是大顶堆。我们用deque作为单调队列的底层数据结构,C++中deque是stack和queue默认的底层实现容器(这个我们之前已经讲过),deque是可以两边扩展的,而且deque里元素并不是严格的连续分布的。陷阱2:缺省情况下,默认底层容器是deque,那么deque在内存中的数据分布是什么样的呢?

2024-01-14 20:01:37 834 1

原创 代码随想录算法训练营第十三天 | ●239. 滑动窗口最大值 ● 347.前 K 个高频元素

代码随想录算法训练营第十三天(第12天休息)代码随想录继续栈和队列 part03●239. 滑动窗口最大值给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。思路:首先想到的是暴力法,力扣上超出时间限制看卡哥视频:此时我们需要一个队列,这个队列呢,放进去窗口里的元素,然后随着窗口的移动,队列也一进一出,每次移动之后,队列告诉我们里面的最大值是什么。

2024-01-14 19:42:12 990 1

原创 代码随想录算法训练营第十一天| ● 20. 有效的括号 ● 1047. 删除字符串中的所有相邻重复项 ● 150. 逆波兰表达式求值

解释:例如,在 “abbaca” 中,我们可以删除 “bb” 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 “aaca”,其中又只有 “aa” 可以执行重复项删除操作,所以最后的字符串为 “ca”。方法:引入栈,如果当前为左括号就入栈右括号,否则当前遍历元素与弹出的栈顶元素进行匹配,若匹配失败则 返回false;给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串,判断字符串是否有效。输入: [“4”, “13”, “5”, “/”, “+”]

2024-01-12 18:52:26 402

原创 代码随想录算法训练营第十天 |● 232.用栈实现队列 ● 225. 用队列实现栈

在push数据的时候,只要数据放进输入栈就好,但在pop的时候,操作就复杂一些,输出栈如果为空,就把进栈数据全部导入进来(注意是全部导入),再从出栈弹出数据,如果输出栈不为空,则直接从出栈弹出数据就可以了。一个队列在模拟栈弹出元素的时候只要将队列头部的元素(除了最后一个元素外) 重新添加到队列尾部,此时再去弹出元素就是栈的顺序了。使用栈来模式队列的行为,如果仅仅用一个栈,是一定不行的,所以需要两个栈一个输入栈,一个输出栈。

2024-01-10 21:53:50 355 1

原创 代码随想录算法训练营第十天 |● 栈与队列理论基础

java虚拟机栈只是JVM当中的一块内存,该内存一般用来存放 例如:局部变量当调用函数时,我们会为函数开辟一块内存,叫做 栈帧,在 java虚拟机栈中开辟,具体如下。

2024-01-10 20:57:45 915 1

原创 代码随想录算法训练营| 力扣双指针方法经典题目

力扣双指针方法经典题目

2024-01-10 17:26:16 356 1

原创 代码随想录算法训练营|字符串:总结篇

代码随想录字符串是若干字符组成的有限序列,也可以理解为是一个字符数组Java中String 是不可变类型,一旦创建无法修改,因此要使用StringBuilder(效率高,线程不安全),StringBuffer(效率低,线程安全)。

2024-01-10 17:01:39 378 1

原创 代码随想录算法训练营第9天| ●28. 实现 strStr() ●459.重复的子字符串 ●字符串总结 ●双指针回顾

如果len % (len - (next[len - 1] + 1)) == 0 ,则说明数组的长度正好可以被 (数组长度-最长相等前后缀的长度) 整除 ,说明该字符串有重复的子字符串。数组长度减去最长相同前后缀的长度相当于是第一个周期的长度,也就是一个周期的长度,如果这个周期可以被整除,就说明整个数组就是这个周期的循环。= -1,则说明字符串有最长相同的前后缀(就是字符串里的前缀子串和后缀子串相同的最长长度)若前后缀不匹配,则j回退到next数组前一位的值对应的位置 j=next[j-1]

2024-01-09 21:35:51 379 1

原创 代码随想录算法训练营第八天 | ● 344.反转字符串 ● 541. 反转字符串II ● 卡码网:54.替换数字 ● 151.翻转字符串里的单词 ● 卡码网:55.右旋转字符串

代码随想录算法训练营第八天代码随想录。

2024-01-08 22:26:46 846

原创 代码随想录算法训练营哈希表总结

处理有多个key映射到相同索引上时的情景,处理碰撞的普遍方式是。对于哈希表,要知道哈希函数和哈希碰撞在哈希表中的作用。是把传入的key映射到符号表的索引上。

2024-01-08 19:55:06 343

原创 代码随想录算法训练营第七天| ●454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和 ● 总结

接下来如何移动left 和right呢, 如果nums[i] + nums[left] + nums[right] > 0 就说明 此时三数之和大了,因为数组是排序后了,所以right下标就应该向左移动,这样才能让三数之和小一些。满足要求的四元组集合为: [ [-1, 0, 0, 1], [-2, -1, 1, 2], [-2, 0, 0, 2] ]否则返回 false。输入:nums1 = [1,2], nums2 = [-2,-1], nums3 = [-1,2], nums4 = [0,2]

2024-01-08 17:38:56 390

原创 代码随想录算法训练营第六天| ●哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数 ● 1. 两数之和

在遍历数组的时候,只需要向map去查询是否有和目前遍历元素匹配的数值,如果有,就找到的匹配对,如果没有,就把目前遍历的元素放进map中,因为map存放的就是我们访问过的元素。map目的用来存放我们访问过的元素,因为遍历数组的时候,需要记录我们之前遍历过哪些元素和对应的下标,这样才能找到与当前元素相匹配的(也就是相加等于target)输出结果中的每个元素一定是 唯一 的。那么判断元素是否出现,这个元素就要作为key,所以数组中的元素作为key,有key对应的就是value,value用来存下标。

2024-01-01 21:50:50 838

原创 (补卡)代码随想录算法训练营第四天| ● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 02.07. 链表相交 ● 142.环形链表II

那么相遇时: slow指针走过的节点数为: x + y, fast指针走过的节点数:x + y + n (y + z),n为fast指针在环内走了n圈才遇到slow指针, (y+z)为 一圈内节点的个数A。快慢指针法,分别定义 fast 和 slow 指针,从头结点出发,fast指针每次移动两个节点,slow指针每次移动一个节点,如果 fast 和 slow指针在途中相遇 ,说明这个链表有环。思路:找倒数第N个节点的前一个节点,让快指针先走N步,在和慢指针一起走。注意:求两个链表交点节点的指针。

2023-12-31 22:51:05 420

原创 代码随想录算法训练营第三天| 203. 移除链表元素 ,707.设计链表 ,206.反转链表

思路:哇,我竟然手写出来了(我哭死),直接想到了设置虚拟节点,自己手写了一遍代码,编译器没有通过,发现是循环结束条件写成了q.next!示例 1: 输入:head = [1,2,6,3,4,5,6], val = 6 输出:[1,2,3,4,5]前边 已经新建一个 head,到底是谁又 new!示例 3: 输入:head = [7,7,7,7], val = 7 输出:[]示例 2: 输入:head = [], val = 1 输出:[]一定要注意,设置虚拟节点之后,返回的是。203.移除链表元素。

2023-12-29 20:26:42 381 1

原创 代码随想录-数组篇总结

正是因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址。Java的二维数组在内存中不是 3*4 的连续地址空间,而是四条连续的地址空间组成!例如: int[][] rating = new int[3][4];数组可以方便的通过下标索引的方式获取到下标下对应的数据。数组内存空间的地址是。

2023-12-28 21:44:47 374 1

原创 代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

代码随想录算法训练营Day02Leet code 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II文档讲解:代码随想录视频讲解:B站学习时长:3.5 小时 (我太菜了)

2023-12-28 20:45:38 425 1

原创 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素。

Leet code 704 二分查找 27 移除元素。

2023-12-27 21:36:27 316

原创 R语言绘制图形

#3.1 常用图形参数#3.1.1颜色#对 swiss mtcars esoph 绘制散点图head(swiss) #查看数据集前几行head(mtcars)head(esoph)head(women)plot(swiss,col="pink") #颜色名称plot(swiss,col=554) # 颜色下标plot(swiss,col="#FF0000") #十六进制的颜色值mycolor <- rgb(red=0,green = 50,blue=100,m.

2020-09-20 18:47:15 2551

原创 R语言编程

R语言编程本文章主要自己的学习过程,博客作为笔记文章目录R语言编程一、R中安装与使用包?二、R编程入门1.基本数据类型2.数据类型转换2.读入数据总结一、R中安装与使用包?R中的包存储在计算机上名为library的目录下使用函数.libPaths ()可以查看该文件夹在计算机中的具体路径函数library ()显示已安装的包的列表函数search ()显示已加载的包的列表下载包install.packages(“包名”)移除包载入过多的包会占用内存导致计算机运行变慢。这时可以将

2020-09-16 10:02:16 3317

原创 R语言开发环境搭建

测试R软件安装成功

2020-09-06 20:06:42 2901

空空如也

空空如也

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

TA关注的人

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