自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode 215.数组中的第K个最大元素

LeetCode第215题“数组中的第K个最大元素”要求找到未排序数组中第k个最大的元素。通常有几种常见的解决方案,包括使用排序、使用最小堆或快速选择算法。

2024-07-19 09:56:39 39

原创 对递归的深度理解及详细示例

关键在于理解递归的三个部分,并通过模拟、调试和练习来逐步掌握递归的思维方式。递归的基本思想是一个函数调用自身来解决一个更小的相同问题,直到达到基准情况(递归出口),在这个情况下不再进行递归调用。从简单的问题开始,比如计算阶乘、斐波那契数列、字符串反转,然后逐步解决复杂的问题,如二叉树遍历、动态规划问题。理解递归可以是一个挑战,但通过一些系统的方法,你可以逐步掌握它。通过逐步分析每个递归调用,你可以更好地理解递归的执行流程。通过反复练习各种递归问题,加深对递归的理解。用纸和笔手动模拟递归调用的过程。

2024-07-19 09:28:38 671

原创 二叉树的遍历(代码实现+详细注释)

这段代码实现了二叉树的后序遍历(Post-order Traversal),但与传统的递归方法不同,这里使用了栈 (Stack) 数据结构来进行非递归的后序遍历。:对于每个节点,先递归遍历其左子树,然后递归遍历其右子树,最后处理当前节点(将其值添加到列表中)。通过递归调用和递归出口的配合,递归函数能够遍历整个二叉树并按照后序遍历的顺序处理每个节点。这个代码实现了二叉树的后序遍历,通过使用栈和头插法来确保节点值按后序遍历的顺序排列。的值插入到结果列表的开头,没有孩子。的值插入到结果列表的开头,没有孩子。

2024-07-19 09:26:43 443

原创 leetcode 141.环形链表

以下是使用 C++ 实现 LeetCode 141 题目“环形链表”的两种方法:哈希表法和快慢指针法。这种方法使用两个指针,一个快指针和一个慢指针。如果链表中存在环,快指针最终会与慢指针相遇。这种方法使用一个集合来存储访问过的节点,如果某个节点已经存在于集合中,说明链表中存在环。这两种方法中,快慢指针法在空间复杂度上更优,通常在实际应用中更常用。

2024-07-12 11:53:58 284

原创 安装和配置Tomcat以托管网页的基本步骤

安装Tomcat后,你可以通过网址访问你的网页。Tomcat 是一个流行的Java Servlet容器和Web服务器,常用于运行Java Web应用程序,但也可以用于托管静态HTML文件。以下是安装和配置Tomcat以托管网页的基本步骤:

2024-07-11 15:52:01 639

原创 C++_QT以及QT斗地主项目笔记

里面记录了很多学习C++和QT时遇到的困惑和解决办法,还有自己的一些思考,以及Java与C++同步学习的心得体会。文章中末尾的QT斗地主项目是看了「爱编程的大丙」老师在B站上的课程之后写的小项目,很遗憾目前还没有完成,后续有时间的话,一定会从头到尾完整复刻一遍

2024-07-09 12:40:13 987

原创 leetcode 680.验证回文串-ii

暴力枚举方法是通过删除字符串中的每个字符,然后检查删除后的字符串是否为回文。leetcode解法。

2024-07-09 11:53:12 320

原创 leetcode 345.反转字符串中的元音字母

LeetCode题目[345]要求反转字符串中的元音字母。我们可以用双指针方法来解决这个问题。

2024-07-09 11:52:04 147

原创 leetcode 167.两数之和-ii-输入有序数组

的时间复杂度和 O(1) 的空间复杂度暴力求解,或者借助哈希表使用 O(n) 的时间复杂度和 O(n) 的空间复杂度求解。但是这两种解法都是针对无序数组的,没有利用到输入数组有序的性质。利用输入数组有序的性质,可以得到时间复杂度和空间复杂度更优的解法。上面的暴力求解法代码无法通过测试的原因是返回的索引从0开始,而题目要求返回的索引从1开始。分别加1,即可满足题目的要求。题目描述中指定你所设计的解决方案必须只使用常量级的额外空间。在这里,我们只需要将返回结果中的索引。参考「1. 两数之和」的解法,使用。

2024-07-09 11:51:07 272

原创 leetcode 88.合并两个有序数组

方法一没有利用数组 nums1与 nums2已经被排序的性质。这一方法将两个数组看作队列,每次从两个数组头部取出比较小的数字放到结果中。的后半部分是空的,可以直接覆盖而不会影响结果。最直观的方法是先将数组 nums2放进数组nums1的尾部,然后直接对整个数组进行排序。我们为两个数组分别设置一个指针 p1与 p2来作为队列的头部指针。中的元素可能会在取出之前被覆盖。那么如何直接避免覆盖。后面的位置永远足够容纳被插入的元素,不会产生。严格来说,在此遍历过程中的任意一个时刻,的元素被覆盖的情况。

2024-07-09 11:49:58 214

原创 leetcode1.两数之和

算法实现中,程序员选择将数组中的元素值作为键,将该元素在数组中的索引作为值。算法实现中,返回的应该是两个元素在数组中的索引,而不是元素值本身。通过这种方式,算法能够在 O(n) 时间复杂度内找到满足条件的两个数的索引。问题要求返回的是两个数的索引,而不是它们的值。我们需要返回的是索引 0,而不是元素值 2,所以返回。如果遍历完数组没有找到满足条件的两个数,返回一个空的向量。就是存储在哈希表中的那个数(补数)的索引,,返回的结果应该是两个数在数组中的索引。返回的就是这两个满足条件的数的索引。

2024-07-09 11:45:37 816

原创 Python零基础到精通-高级篇

【图片下载※】importurllib.requestasreqif__name__=='__main__':#**********begin*********#webpage=req.urlopen('http://www.gotonudt.cn/site/gfkdbkzsxxw/resources/img/logo.png')webdata=webpage.read()img=open('img/logo...

2022-05-30 19:23:09 3170

空空如也

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

TA关注的人

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