自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

m0_75068978的博客

一个普普通通的Ordinart~博客

  • 博客(58)
  • 收藏
  • 关注

原创 算法第十七天:leetcode344.反转字符串

344.反转字符串的链接如下表所示,您可直接复制下面网址进入力扣学习,在观看下面的内容之前一定要先做一遍哦,这样才能印象深刻!https://leetcode.cn/problems/reverse-string/https://leetcode.cn/problems/reverse-string/编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。示例 1:输入:s = ["h

2024-08-03 22:39:48 480 1

原创 char类型和int类型

在Java中,char(字符)类型用于表示单个字符,它是基本数据类型之一。以下是关于Java中charchar' 'charchar\'\t\ncharchar'\u0000''\uffff'charchar例如,以下是一些基本的char总结来说,Java中的char类型是用来表示Unicode字符的基本数据类型,它支持广泛的字符集,并且通过Unicode编码实现跨语言和符号的完整支持。

2024-08-03 22:29:52 717

原创 算法第十六天:leetcode349.两个数组的交集

如下表所示,您可以直接复制下面网址进入力扣学习,在观看下面的内容之前您一定要先做一遍哦,以便让你印象更加深刻!给定两个数组nums1和nums2,返回它们的交集。输出结果中的每个元素一定是的。我们可以。[2][9,4][4,9] 也是可通过的。

2024-08-02 20:06:08 813

原创 算法第十七天:leetcode242.有效的字母异位词

如下表所示,您可以直接复制下面网址进入力扣学习,在观看下面的内容之前您一定要先做一遍哦,以便让你印象更加深刻!

2024-08-02 18:20:17 695 1

原创 虚拟头节点和循环链表基础知识

虚拟头结点(Dummy Node)是数据结构中的一种技巧,通常用于简化边界条件或者特殊情况的处理。它并不存储实际的数据,而是作为一个辅助节点存在,用于指示链表或者其他数据结构的起始位置或者特定状态。在链表中,虚拟头结点经常被用来处理插入、删除等操作,特别是在操作链表头部时。它可以避免需要单独处理空链表或者头部节点的情况,简化了代码逻辑。

2024-07-25 23:01:11 522

原创 算法第十五天:leetcode19.删除链表的倒数第N个节点

如下表所示,您可直接复制下面网址进入力扣学习,在观看下面的内容之前您一定要先做一遍哦,以便让我印象更深刻!给你一个链表,删除链表的倒数第。个结点,并且返回链表的头结点。你能尝试使用一趟扫描实现吗?

2024-07-25 22:55:31 749 1

原创 算法第十四天:leetcode24.两两交换链表中的节点

24.两两交换链表中的节点的链接如下表所示,若无法直接点击下面的链接进入力扣做题的话,您也可直接复制下面的网址,然后进入力扣学习该题。在观看下面的内容之前您一定要先做一遍哦,这样才可以使你印象深刻!!!题目描述:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。

2024-07-23 19:37:54 722

原创 单链表和双链表的基础知识

单链表通过节点之间的单向引用实现了简单而高效的数据存储和操作方式,适合在需要频繁插入和删除操作的场景中使用。尽管它在某些操作上有一些限制,但其简单和灵活性使得它在实际应用中非常常见。对于单链表的插入和删除操作相对容易,只需要调整节点间的指针即可。但是查找操作需要从头节点开始遍历整个链表,时间复杂度为O(n)。因此,单链表适合频繁进行插入和删除操作,但不适合频繁进行查找操作的场景。在实际应用中,单链表常用于实现栈、队列等数据结构,也可以用于解决一些特定的问题,例如反转链表、求链表中点等。

2024-07-22 15:15:11 946

原创 算法第十三天:leetcode206.反转链表

的链接如下表所示,您可直接复制下面网址进入力扣学习,在观看下面的内容之前一定要先做一遍哦,这样才能印象深刻!链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?,请你反转链表,并返回反转后的链表。

2024-07-21 23:04:16 437

原创 梦开始的地方,算法第十二天:leetcode1.两数之和

的链接如下表所示,您可直接复制下面网址或点击该链接进入力扣进行学习。温馨提示:在观看下面的内容之前一定要先做一遍哦,这样的话才可以令你印象深刻!你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。整数,并返回它们的数组下标。你可以想出一个时间复杂度小于。你可以按任意顺序返回答案。,请你在该数组中找出。

2024-07-20 22:02:48 452

原创 算法第十一天:leetcode707.设计链表

的链接如下表所示,您可直接复制下面网址进入力扣学习,在观看下面的内容之前一定要先做一遍哦,这样才能印象深刻!题目描述:你可以选择使用单链表或者双链表,设计并实现自己的链表。val和next。val是当前节点的值,next是指向下一个节点的指针/引用。如果是双向链表,则还需要属性prev以指示链表中的上一个节点。假设链表中的所有节点下标从开始。实现index-1valvalvalindexindexindexindex// 链表变为 1->2->3// 返回 2。

2024-07-19 22:56:42 2527

原创 算法第十天:leetcode203.移除链表元素

首先判断要删除的元素是否是头节点,还要判断头结点不为空。如果这个头结点为空,相当于是操作空指针,那么编译就会报错。同时头节点所指向的数值等于目标值。然后把头结点指向这个头节点的下一个。

2024-07-18 23:01:58 671

原创 最后通牒效应:完成比完美更重要

习惯与拖延的人,通常很难确定奋斗目标,因为他们经常忙于设定目标,而设定的目标又总是不够明确,或者缺乏时间期限,因此让目标总是处于一种游离状态。完成比完美更重要,追求完美本无可厚非,并且值得推崇,但也需要掌握好一个度,真正的完美是可望而不可即的,因此所谓完美都是相对的,如果非要做到无可挑剔才肯罢休,那么,必然与成功无缘,并会因此留下莫大的遗憾。很多人都有过这样的体验:当手头的工作只剩下几个小时就要上交的时候,你将会以惊人的效率将其完成,这就是最后的通牒效应。

2024-07-16 22:42:49 382

原创 算法第九天:leetcode59.螺旋矩阵II

1.while循环判断条件loop

2024-07-15 23:00:35 380

原创 培哥记忆法

当你逐渐掌握了这种记忆技巧以后,不仅可以用来记忆词语,听别人讲话时也同样可以使用。当你听讲时只需要记住少量的重点号码,不需要逐句记忆学习内容,只按顺序仔细要点就可以了。先记住重点,再用自己的话去补充叙述,这样在回忆时就很有把握,不至于半途而废,往往会收到更好的学习效果。例如,在将“水杯”和“上海”进行联想,如果是“在上海见到一个很好看的水杯”就很普通,很难牢固记忆。来设定,如,按照自己身体的部位编号,按公交车站点名称编号,等等。,从而通过这样一对一的联想,记住全部需要记忆的词语。里默默练习它的使用。

2024-06-30 16:11:38 284

原创 算法第八天:leetcode234.回文链表

3.慢指针slow从起始位置向末端位置查找,而fast快指针则从末端位置向起始位置开始进行查找。2.定义快慢指针,如果slow指针的值不等于fast指针的值,则返回false;,请你判断该链表是否为回文链表。1.复制当前节点的数组到新数组vals中;给你一个单链表的头节点。空间复杂度解决此题?

2024-06-26 21:27:58 646

原创 算法第八天:leetcode 35.搜索插入位置

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。2.使用Java语言的具体代码。请必须使用时间复杂度为。1.c++的具体代码如下。

2024-06-19 17:23:17 486

原创 算法第七天:leetcode之209.长度最小的子数组

我希望我的博文能够带给您有用的滑动窗口算法知识和启发。如果您有任何问题或意见,请随时联系我或在评论区评论。子数组 [4, 3]是该条件下的长度最小的子数组。找出该数组中满足其总和大于等于。如果不存在符合条件的子数组,返回。个正整数的数组和一个正整数。

2024-06-16 21:11:35 685

原创 双指针之滑动窗口

在 C++ 算法中,滑动窗口是一种经常用于解决数组或字符串的子数组或子串问题的技术。它通过维护一个窗口(通常是一个子区间),动态地调整窗口的起始位置和终止位置来解决问题。滑动窗口通常用于求解最大子数组和、最小子数组和、以及匹配特定条件的子串等问题。

2024-06-13 20:37:06 431

原创 算法第六天:力扣第977题有序数组的平方

排序后,数组变为 [0,1,9,16,100]平方后,数组变为 [16,1,0,9,100]组成的新数组,要求也按。

2024-06-12 17:47:35 1413

原创 算法之链表知识

尽管链表有一些限制,但在某些场景下仍然是一种非常有用的数据结构,特别是在需要频繁进行插入和删除操作、无法预先确定存储空间大小或需要动态管理内存的情况下。总之,链表是一种常见的数据结构,用于存储和操作数据元素的集合。双向链表(Doubly Linked List):每个节点除了包含数据之外,还包含一个指向前一个节点和一个指向后一个节点的指针。双向链表可以从头节点或尾节点开始遍历,而且可以直接访问前一个节点和后一个节点,因此在某些情况下比单向链表更灵活。

2024-06-08 14:12:32 457

原创 算法第五天之力扣第27题:移除元素

我希望我的博文能够带给您有用过的算法知识和启发。你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。// 排序 nums 的前 k 个元素。双指针的基本知识如下链接所示,感兴趣的读者可点击或复制下面的链接进行学习。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。

2024-06-06 12:21:45 2186

原创 双指针基础知识

它的基本思想是使用两个指针来遍历数组或链表和追踪数组或链表中的元素,通常分别被称为快指针和慢指针,从而解决一些特定的问题,如查找特定元素、判断是否存在某种关系、寻找满足条件的子数组或子序列等。在移动指针时,跳过非字母或数字字符,并将字符转换为小写字母进行比较,以忽略大小写和非字母数字的差异。双指针法的时间复杂度通常为O(n),空间复杂度为O(1),因此在解决一些空间复杂度要求较高的问题时尤为有效。

2024-06-05 18:39:35 590

原创 算法第四天力扣第704题:二分查找

我希望我的博文能够带给您有益的信息和启发,让您的生活更加丰富多彩。如果您有任何问题或意见,请随时联系我或在评论区评论。,如果目标值存在返回下标,否则返回。9 出现在nums中并且下标为 4。2 不存在nums中因此返回 -1。个元素有序的(升序)整型数组。

2024-06-03 20:26:45 529

原创 Kmeans聚类模型

K均值(K-Means)聚类是一种常用的无监督学习算法,用于将数据集中的样本划分为K个不同的簇(cluster),使得每个样本都属于距离最近的簇的中心。K均值聚类的目标是通过最小化簇内样本的方差或欧氏距离的平方和来确定簇的中心,从而实现聚类分析。

2024-06-02 15:43:20 642

原创 算法第三天力扣第69题:X的平方根

解题思路:根据题意定义左右端点的值,找中间值mid为left+(right-left)/2,而且类型必须是long long型,原因是0

2024-06-01 20:19:41 852

原创 二分查找算法的定义

二分查找算法,也称为折半查找算法,是一种在有序数组中查找特定元素的常用算法,用于在有序数组或列表中查找特定元素的位置。它的基本思想是:首先确定目标值可能存在的区间,然后逐步缩小区间直到确定目标值的位置或者确定目标值不存在。

2024-05-30 11:24:50 1039

原创 IntelliJ IDEA安装

IntelliJ IDEA是一款功能强大的集成开发环境(IDE),适用于Java、Kotlin、Groovy等编程语言的开发。另外,如果你购买了许可证,你需要激活 IntelliJ IDEA,或者选择试用期(30天免费试用)。: 安装完成后,你可以在启动菜单(Windows)、Launchpad(macOS)或应用程序目录(Linux)中找到 IntelliJ IDEA 的图标,并双击打开。按照自己的喜好和需求进行选择。你可以选择使用默认配置,也可以导入之前的设置,或者手动配置新的设置。

2024-05-30 10:42:32 755

原创 C++基础知识之类和对象

对象是根据类的定义创建的实体,它具有类定义的属性和行为。对象是类的实例,它是类定义的抽象的具体实现。通过类创建的对象可以访问类中定义的属性和方法,并且每个对象都拥有自己的状态(数据成员的值)。对象具有自己的状态(属性)和行为(方法),可以通过访问对象的属性和方法来操作和修改对象的状态。类是对一组对象的抽象描述,它定义了对象的通用属性和行为。对象则是根据类的定义创建的实体,它具有类定义的属性和行为。在C++中,通过定义类和创建对象,可以实现数据和行为的封装,从而提高代码的可维护性、可扩展性和复用性。

2024-05-29 20:15:18 823

原创 基于JAVA GUI的JDBC连接数据库

Connection接口代表Java程序和数据库的连接。在Connection接口中,定义了一系列方法,其常用方法如表2.2所示。DriverManager类用于加载JDBD驱动并且创建其与数据库的连接。在DriverManager类中定义了两个比较重要的静态方法,如表2.1所示。我希望我的博文能够带给您有益的信息和启发,让您的生活更加丰富多彩。对象,你可以执行SQL查询和更新操作。你需要导入Java数据库连接相关的包,例如。与数据库连接相关的类和接口。

2024-05-26 17:39:34 914

原创 JAVA GUI之RGB配色

使用预定义的颜色常量和自定义的RGB配色,Color类还提供了其他一些方法来创建颜色。例如,使用Color类的getHSBColor(float h, float s, float b)方法可以根据色调、饱和度和亮度来创建一个颜色对象。可以使用Color类的静态方法Color(int r, int g, int b)来创建一个自定义的RGB配色。Color类提供了一些预定义的颜色常量,如Color.RED、Color.GREEN和Color.BLUE等。

2024-05-25 17:01:21 573

原创 基于JAVA GUI体育馆管理系统的会员功能

Java GUI即Java图形用户界面,是一种使用图形化元素(如窗口、按钮、文本框等)来构建用户界面的技术。它基于Java的Swing框架,可以用于创建各种复杂的用户界面,包括窗口、对话框、菜单、按钮、文本框、复选框、下拉列表等。我希望我的博文能够带给您有益的信息和启发,让您的生活更加丰富多彩。:Java是一种跨平台的编程语言,Java GUI也具有跨平台的特性。它可以在不同的操作系统上(如Windows、Linux、Mac)上运行,而不需要针对不同的操作系统进行特殊的编码。

2024-05-25 16:58:32 705

原创 基于JAVA语言的多态

然后,通过父类的引用指向子类的对象,就可以在父类中调用子类的方法。名义类型和真实类型之间的关系可以是一致的,也可以是不一致的。当名义类型和真实类型一致时,对象的行为与其声明的类型一致。当名义类型和真实类型不一致时,对象的行为可能与其声明的类型不一致。真实类型指的是在程序运行时对象的真实类型。因此,animal对象的行为将符合Animal类的定义,但会根据真实类型Cat的定义进行实际操作。通过使用多态性和继承,Java允许在运行时处理对象的真实类型,而无需在编写代码时确定对象的真实类型。

2024-05-20 23:00:39 433

原创 JAVA GUI之自定义窗口

我努力创作出有趣、深入和有意义的JVA GUI内容,以吸引你的注意力并增加你的JAVA知识。我希望以上内容能够在你的生活中留下深刻的印象,并激发你思考和探索更多的可能性。如果您有任何建议、意见或者想要分享的想法,请随时与我联系。我衷心地希望我的JAVA GUI作品能够给你带来知识和启发。Java Gui的自定义窗口可以通过继承JFrame类来实现。其中:MyFrame里负责窗口界面的构造、以及相关的逻辑。

2024-05-20 21:13:33 355

原创 指针在函数的应用(C++)

在print函数中,数组名name代表该指针数组首元素的地址,name+i是name[i]的地址。实参传递进函数体内后,生成的是实参的副本,在函数内改变副本的值并不影响实参。p是一个指针数组,它的每个元素都是指针型数组(值为地址),指针数组p的第一个值是变量a的地址。一个函数可以带回一个整型值、字符值、实型值等,也可以带回指针型的数据,即地址。一个函数在编译时被分配给一个入口地址,这个函数入口地址就称为函数的指针。swap函数是自定义的重载函数,在main函数中调用该函数交换变量a和b的值。

2024-05-15 20:56:30 806

原创 C++基础语法之数组

在C++中,一维数组是一系列具有相同数据类型的元素的集合。它们在内存中是连续存储的,可以通过索引访问每个元素。而二维数组是一个表格,由行和列组成。它是一系列具有相同数据类型的元素的集合,这些元素通过行和列的索引来访问。一维数组描述的是线性序列,二维数组描述的则是矩阵。

2024-05-14 21:14:53 732

原创 C++语言的字符数组

以上就是今天要讲的内容,本文章简单介绍了C++中的字符数组相关的内容。如有想要了解更多相关的C++基础知识的读者,您点击下面链接进行学习。如有想了解到更多C++基础详细知识可以看我的专栏C++语法学习。

2024-05-13 21:45:38 1287

原创 基于C++基础知识的指针

本文章简单介绍了C++中的指针变量及其如何使用。

2024-05-12 12:26:50 678

原创 C++基础中的存储类别

以上就是今天要讲的内容,本文简单介绍了C++基础中的变量类型如auto变量、static变量、register变量和extern变量以及应用。

2024-05-10 20:57:50 638

原创 基于C++函数基础中的形参与实参

在函数调用时,实参用于提供函数所需的具体值。实参可以是常量、变量、表达式等。实参的数量和类型必须与函数定义中的形参匹配,否则会导致编译错误。实参的值会被复制给形参。这意味着在函数内部对形参的修改不会影响到实参本身。形参的作用是定义函数在执行时所需要的输入,它们在函数体内被当做局部变量使用。在C++中,函数的形参(形式参数)是在函数定义时声明的参数,而实参(实际参数)是在函数调用时传递给函数的值或变量。

2024-05-09 12:20:36 487 1

3.1软件过程概念.pptx

3.1软件过程概念.pptx

2024-06-14

空空如也

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

TA关注的人

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