杨晨枫
码龄3年
求更新 关注
提问 私信
  • 博客:8,424
    8,424
    总访问量
  • 29
    原创
  • 6
    粉丝
  • 14
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
加入CSDN时间: 2022-10-29

个人简介:俺是乡野土锤。

博客简介:

m0_74815493的博客

查看详细资料
个人成就
  • 获得10次点赞
  • 内容获得12次评论
  • 获得12次收藏
  • 博客总排名2,118,280名
创作历程
  • 29篇
    2023年
成就勋章

TA关注的专栏 2

TA关注的收藏夹 0

TA关注的社区 1

TA参与的活动 0

创作活动更多

新星杯·14天创作挑战营·第13期

这是一个以写作博客为目的的创作活动,旨在鼓励大学生博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。我们诚挚邀请你们参加为期14天的创作挑战赛!注: 1、参赛者可以进入活动群进行交流、互相鼓励与支持(开卷),虚竹哥会分享创作心得和涨粉心得,答疑及活动群请见:https://bbs.csdn.net/topics/619781944 【进活动群,得奖概率会更大,因为有辅导】 2、文章质量分查询:https://www.csdn.net/qc

90人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

算法题解:283.移动零

使用双指针,前指针负责找零元素,后指针负责将其后的第一个非零元素拿来替换。要求将所有数组中的零元素移至末尾,非零元素不改变相对顺序。移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作。显然时间复杂度为O(n)。,编写一个函数将所有。
原创
博文更新于 2023.11.30 ·
144 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:82. 删除排序链表中的重复元素 II

每遇到q的值等于q->next的值的情况,就记录下val值,然后操控内循环,将q移动到所有重复的val值之后的第一个位置。将新位置设为p->next(即从链中删掉中间的所有的值==val的结点。题目要求将重复过的数据全部删掉,那么可以定义两个指针p和q,其中p作为头,q从head开始。删除原始链表中所有重复数字的节点,只留下不同的数字。显然,时间复杂度为O(n)。给定一个已排序的链表的头。
原创
博文更新于 2023.11.29 ·
148 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:最长公共前缀

题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。"fl"""输入不存在公共前缀。
原创
博文更新于 2023.11.23 ·
161 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:路经总和

题目描述:给你二叉树的根节点root和一个表示目标和的整数targetSum。判断该树中是否存在的路径,这条路径上所有节点值相加等于目标和targetSum。如果存在,返回true;否则,返回false。是指没有子节点的节点。true等于目标和的根节点到叶节点路径如上图所示。false树中存在两条根节点到叶子节点的路径:(1 --> 2): 和为 3(1 --> 3): 和为 4不存在 sum = 5 的根节点到叶子节点的路径。false由于树是空的,所以不存在根节点到叶子节点的路径。
原创
博文更新于 2023.11.22 ·
148 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:训练计划

题目描述:给定一个头节点为head的链表用于记录一系列核心肌群训练项目编号,请查找并返回倒数第cnt个训练项目编号。8。
原创
博文更新于 2023.11.14 ·
133 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

树的中序遍历

2.进入对于结点‘2’的遍历,对于根节点‘2’来说,应当先遍历访问附属于的其子结点‘4’的所有结构,再遍历访问该结点,最后遍历访问附属于其子结点‘5’的所有结构。7.进入对于结点‘3’的遍历,对于根节点‘3’来说,应当先遍历访问附属于的其子结点‘6’的所有结构,再遍历访问该结点,最后遍历访问附属于其子结点‘7’的所有结构。1.对于根节点‘1’来说,应当先遍历访问附属于的其子结点‘2’的所有结构,再遍历访问该结点,最后遍历访问附属于其子结点‘3’的所有结构。故遍历访问根节点‘1’。4.访问结点‘2’。
原创
博文更新于 2023.11.13 ·
72 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:多数元素

外层循环从unms[0]至nums[numSize-1]遍历,内层循环从nums[0]至nums[numSize-1]开始计数,当某个元素的数量大于numsSize/2时结束。解决办法:引入一个数组,长度为numsize/2+1,(用来记录nums中有多少不同的数字),在每次循环遍历前先判断,这个是否遍历过,如果出现过则不再重新进行循环。实际运行中存在一个问题:那就是如果多数的那个靠后出现,则难以结束遍历判断。你可以假设数组是非空的,并且给定的数组总是存在多数元素。,返回其中的多数元素。
原创
博文更新于 2023.11.08 ·
72 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:x的平方根

思路一:从1开始遍历,直到找到那个临界值i,使得i*i<=x且(i+1)*(i+1)>x,那么此时这个i就是x怕平方根的整数部分。通过二分夹逼法,设置三个参数:left、middle、right,动态调整范围,将i找到。8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。结果这样复杂度为O(x^0.5)的朴素算法才击败了个位数的用户。不允许使用任何内置指数函数和算符,例如。显然,时间复杂度为O(logx);由于返回类型是整数,结果只保留。
原创
博文更新于 2023.11.07 ·
89 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法题解:704.二分查找

题目描述:给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的target,如果目标值存在返回下标,否则返回-1。numstarget= 949 出现在nums中并且下标为 4numstarget= 2-12 不存在nums中因此返回 -1numsn[1, 10000]nums。
原创
博文更新于 2023.10.28 ·
112 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JAVA21 的某几个新特性:

记录类类名可以是record,以及可以在类名后定义字段,这些字段可以在其他用到此类的时候直接拿来用,而不是通过对象来获取。(如下图:因为test3类在定义时添加定义了x与y,所以在test3对象作为某函数的参数时,直接使用而不用通过对象引用。
原创
博文更新于 2023.09.24 ·
212 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

算法题解:141.环形链表

题目描述:给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从 0 开始)。pos。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。true链表中有一个环,其尾部连接到第二个节点。true链表中有一个环,其尾部连接到第一个节点。false链表中没有环。-1。
原创
博文更新于 2023.09.23 ·
74 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

算法题解:121.买卖股票的最佳时机

题目描述:给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择买入这只股票,并选择在卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。5在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。0。
原创
博文更新于 2023.09.23 ·
75 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

算法题解:206.反转链表。

思路:从头开始,用三个指针,用while循环,每次将连续三个结点中的中间节点next指向前一节点,然后将三个指针后移,为什么需要三个指针呢,这是因为在单链表中,除了头结点外的任何节点都需要其前驱节点来获取。如果某个结点的next指向了别处,那你将无法获取他原本指向的next。应用递归思想,从头结点开始,对于每个结点来说,假设后面的一系列结点都反转完成,那么只需将其next指向自己即可,对倒数第二个结点来说,后面仅有的一个结点可以看作本来就反转完成的,那么此时就是终止递归的时候。时间复杂度:显然为O(n)。
原创
博文更新于 2023.09.16 ·
78 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

算法题:383.赎金信

思路:直观看来,要知道r数组能不能由m数组中的元素所构成,只需要遍历r数组一遍,每遇到一个元素,就在m数组中遍历寻找,找不到就return false,如果找到了,因为不能重复使用字母,就删去那个元素然后继续找下一个。那么就可以定义一个长度为26的字母数组,遍历一遍m数组,将r数组里的元素个数分别储存在数组里,再遍历一遍r数组,代表着r数组里的元素使用这些字母,每使用一个就将相应字母的个数减一。最终遍历一遍字母数组,数组里如果有减至0以下的字母说明m数组里的元素个数不足够构成r数组。
原创
博文更新于 2023.09.14 ·
72 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

servlet中两种资源跳转的方式:

这是一种在服务器内部的资源跳转方式,过程为:当客户端(就是浏览器)把请求发送到服务器中以后,假设原本该由资源a来接收,那么此时资源a可以将请求转发(forword)给另一个资源b,然后由资源b来响应请求的结果。实现方式:只需在资源a中获取forword方法,为服务器提供资源b的路径即可。在这个过程中,本来由资源a从客户端获取的数据可以使用Reauest对象来传送共享给资源b。注意:进行请求转发时,是在服务器内的资源之间进行跳转,浏览器始终只发一次请求,所以可以看到浏览器的地址栏路径是不变的。
原创
博文更新于 2023.09.14 ·
489 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

(朴素的)算法题解:20.有效的括号

给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。
原创
博文更新于 2023.09.10 ·
64 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

算法题解: 88. 合并两个有序数组

此题需要把nums1中各项与nums2中各项进行升序排列,最终返回nums1,因为nums1的前m位本来就按照升序排列,后n位为空,所以对两个数组从大向小进行比较和填充比较节省时间。1.设置两个游标,从nums1的第m个元素与nums2的第n个元素开始比较,值较大者从后向前填入nums1尾部,然后游标左移。3.特别地:如果nums1本就没有有效值,也就是m=0的情况下,为了避免nums1[-1]这种语句出现,直接使nums1=nums2即可。,5,6] ,其中斜体加粗标注的为 nums1 中的元素。
原创
博文更新于 2023.09.07 ·
86 阅读 ·
1 点赞 ·
2 评论 ·
0 收藏

Java web学习日志(笔记)

如果连接的是本机mysql服务器,并且mysql服务默认端口是3306,则url可以简写为:jdbc:mysql:///数据库名称?4.3.1:执行时机不同:where是分组之前进行限定,不满足where条件,则不参与分组,而having是分组之后对结果进行过滤。1.1:数据库设计就是根据业务系统的具体需求,结合我们所选用的DBMS,为这个业务系统构造出最优的存储模型。参数键值对1&参数键值对2...1.数据库的事务(Transaction)是一种机制,一个操作序列,包含了一组数据库操作命令。
原创
博文更新于 2023.06.11 ·
372 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java基础学习日志(反射笔记)

泛型只是在编译阶段可以约束集合操作的数据类型,在编译成Class文件进入运行阶段的时候,其真实类型都是ArrayList了,泛型相当于被擦除了。反射是指对于任何一个class类,“在运行的时候”都可以获取类的字节码文件对象,然后解析这个类全部部分。1.反射是作用在运行时的技术,此时集合的泛型将不能产生约束了,此时是可以为集合存入其他任意类型的元素的。反射的第一步都是先得到编译后的Class类对象,然后就可以得到Class的全部成分。2.1:要先得到类对象,然后从类对象中获取类的成分对象。
原创
博文更新于 2023.06.01 ·
105 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java:m*n数组暴力全排列(慎入!内存爆炸)

排列形式:每次在m*n数组的每一行取一个元素作为加数,将总共n^m个和值存入数组中。
原创
博文更新于 2023.06.01 ·
245 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏
加载更多