自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 合并两个有序链表

然后,比较两个链表的头节点,将较小的节点接入到新链表中,并更新相应的指针,直到其中一个链表为空。最后,将剩余非空的链表直接接入到新链表的末尾。这两种方法都可以有效地合并两个有序链表,并返回一个新的有序链表。选择使用迭代方法还是递归方法取决于个人偏好和具体的应用场景,但从效率上来说,迭代方法通常更具有优势。递归的思路是比较两个链表的头节点,将较小的头节点作为当前节点的下一个节点,并递归地处理剩余的部分。将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

2024-08-08 22:29:22 360

原创 如何求数组的最长连续序列?暴力算法、HashMap、HashSet、TreeSet四种解题思路

如何求数组的最长连续序列?暴力算法、HashMap、HashSet、TreeSet四种解题思路

2024-08-06 22:48:15 642

原创 找到所有数组中消失的数字

这种方法利用了原数组的特性,通过改变数组元素的大小,又通过取模运算还原出原来的值,最后通过大小来标记出现情况,从而在常数空间内找出缺失的元素,非常高效。进行两次线性扫描:一次是标记操作,一次是找到缺失数字的操作,因此总体时间复杂度为 O(2n),即 O(n)。这种方法利用了原数组的特性,通过改变数组元素的正负来标记出现情况,从而在常数空间内找出缺失的元素,非常高效。第二次遍历 present数组,找到所有值为 false的索引,即为没有出现在 nums中的整数。中的数字,并以数组的形式返回结果。

2024-08-06 08:46:50 951

原创 合并两个有序数组

题目:给你两个按排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你nums2到nums1中,使合并后的数组同样按排列。最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m + n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。需要合并 [1,2,3] 和 [2,5,6]。合并结果是 [,2,,5,6] ,其中斜体加粗标注的为 nums1 中的元素。[1]

2024-08-05 21:11:08 1085

原创 final、static、Synchronnized、supper和this关键字用法详解

final、static、Synchronnized、supper和this关键字用法详解

2024-08-05 16:48:19 1017

原创 什么是单例模式?

单例模式是一种常见的设计模式,它确保一个类只有一个实例,并提供一个全局访问点来获取这个唯一实例。这种模式通常在需要控制某些资源的访问权限或确保对象的唯一性时使用。

2024-08-04 22:33:25 628

原创 Socket如何实现客户端和服务器间的通信

Socket 是实现网络通信的一种机制,它允许在不同主机之间的进程通过网络进行数据交换。下面我将简要介绍如何使用 Socket 实现客户端和服务器间的通信。

2024-08-04 22:27:04 739

原创 File类、FileInputStream类、FileOutputStream类、FileReader类、BufferedReader类、FileWriter类和BufferedWriter类详解

数据类型和处理字节数据,适合处理二进制文件。FileReader和FileWriter处理字符数据,适合处理文本文件。功能和提供基本的字节级读写操作。FileReader和FileWriter提供字符级的读写操作,并且可以处理字符编码。效率使用缓冲流(如和)可以显著提高读写效率,减少对文件系统的访问次数,特别是在处理大文件时更为明显。异常处理在使用这些类进行文件操作时,都需要注意异常处理和资源释放,特别是在文件操作完成后,要调用close()方法关闭流,避免资源泄漏。

2024-08-03 23:09:27 1021

原创 SimpleDateFormat类和NumberFormat类用法详解

类允许将数字格式化为特定的字符串表示形式,以及将字符串解析回数字。它是抽象类,因此不能直接实例化,但提供了几个静态工厂方法来获取不同类型的实例,如整数、货币和百分比格式化器。类提供了一种简单的方法来格式化和解析日期和时间,通过使用预定义的模式字符串。它是线程不安全的,不建议在多线程环境中共享实例,但通常用来处理日期格式化的需求。:将给定格式的字符串解析为对象,从指定位置开始。:将给定格式的字符串解析为对象,从指定位置开始。:将给定的双精度浮点数格式化为字符串。:将给定格式的字符串解析为。

2024-08-03 18:05:48 1634

原创 System类、BigDecimal类、Calendar类 用法详解

具体使用时,状态码的具体含义可以由程序员自定义约定,也可以遵循某些标准或操作系统约定的状态码含义。在实际应用中,状态码的具体选择应该根据程序的具体需求和上下文来决定,以便于后续的程序调试、错误处理或者状态监控。类是Java中的一个核心类,提供了访问与系统相关的一些属性和方法。它提供了高精度的算术运算,适用于需要精确计算或者不希望因为浮点数计算带来的精度问题而影响计算结果的场景。类允许我们进行日期字段(如年、月、日)的操作,还可以进行日期之间的计算和比较。:增加或减少指定字段的值,而不影响更大的字段。

2024-08-02 21:11:24 963

原创 Java反射用法的详细讲解

Class 对象Class 对象代表了一个类或接口在运行时的信息,可以用来获取类的结构信息、访问类的属性和方法等。在Java中,每个类在运行时都有一个对应的Class对象,这个对象包含了关于类的各种信息,比如类的方法、字段、构造函数等。Class类提供了许多方法来获取这些信息,使得在运行时能够动态地获取和操作类的成员。

2024-08-02 17:32:33 814

原创 Java中 Math类 和 Random 类 用法的详细介绍

Math。

2024-08-02 13:40:48 803

原创 泛型格式和用法

泛型就是定义一种规范,这种规范规定了类、接口、方法中可以接受的数据类型。它允许类、接口和方法在定义时使用参数化类型。这样可以在不确定具体类型的情况下编写通用的代码,并在实际使用时指定具体的类型参数。

2024-08-01 21:52:35 1141

原创 如何创建线程对象?

线程(Thread)是计算机科学中的基本概念,它表示程序执行流的最小单元。简单来说,一个线程就是程序中一个单独的执行路径。在多线程编程中,一个进程可以拥有多个并发执行的线程,每个线程都独立运行,但又共享相同的内存空间和资源。

2024-08-01 10:40:16 624

原创 匿名内部类和Lambda表达式

在Java中,Lambda表达式是用来表示一个匿名函数的简洁语法。匿名内部类是一种没有类名的局部内部类,它通常用于创建只需使用一次的类的实例。这种使用方式使得我们可以在不需要显式定义一个新的具体子类的情况下,实现抽象类的抽象方法,并且可以方便地使用抽象类中定义的其他方法。内部是匿名内部类的定义,其中可以实现接口的方法或者扩展抽象类。是一个接口,通过匿名内部类方式创建了一个实现了。是一个变量名,用于引用这个匿名内部类的实例。现在,我们可以创建一个匿名内部类来实现。方法中创建它的匿名子类的实例。

2024-07-31 20:41:06 570

原创 Error 和 Exception的区别

Error 表示严重的问题,通常是系统级的问题,通常无法通过代码来处理或恢复。

2024-07-31 20:25:12 1010

原创 Java的基本语句结构

它适用于当有多个固定值需要比较时,可以提供更清晰和简洁的代码,尤其是当每个条件有不同的处理逻辑时。效率和可读性:与增强for循环相比,普通的for循环可能更适合需要特定控制流程或需要修改数组元素的情况,但也可能稍显复杂。这种循环结构在语法上更加简洁和直观,适合于遍历集合或数组中的所有元素,但不适合需要对索引进行操作或者需要使用迭代器的情况。当条件为 false 时,循环终止,执行循环之后的代码。在这个例子中,分号之间的部分表示termination,它被省略了,因此循环将会无限循环,除非在循环体内部使用。

2024-07-30 21:42:13 810

原创 详谈String、StringBuffer 和 StringBuilder

在Java中,`String` 对象是不可变的,即一旦创建,它的值就不能被更改。共同方法:`StringBuilder` 和 `StringBuffer` 都有类似的方法,用来进行字符串的增删改查操作,比如 `append()`, `delete()`, `insert()`, `length()` 等。2.空字符串: 如果传入的前缀或后缀字符串是空字符串 `""`,则 `startsWith()` 和 `endsWith()` 方法会始终返回 `true`,因为空字符串是任何字符串的前缀和后缀。

2024-07-30 21:22:50 634

原创 == 和 equals 的区别

在Java中,==和equals()====运算符用于比较两个对象的引用(内存地址)是否相同。如果两个引用指向内存中的同一个对象,则==返回true。对于基本数据类型,==则用于比较它们的值是否相等。equals()方法用于比较对象的内容是否相等(逻辑相等)。equals()方法是Object类中定义的方法,因此所有的Java类都继承了这个方法。默认情况下,equals()方法的行为与==运算符相同,即比较两个对象的引用是否相同。但是,许多类(如StringInteger等)会重写。

2024-07-29 21:22:37 623

原创 Java的基本数据类型和包装数据类型

总之,基本数据类型和包装类型之间的关系主要是为了使基本数据类型能够以对象的形式进行操作,同时提供了更多的功能和灵活性,使得 Java 在面向对象的同时,仍然能够高效地处理基本数据类型。②功能增强: 包装类型提供了一些额外的功能和方法,如 Integer 类型提供了用于处理整数的方法,比如 parseInt、toString 等,这些在基本数据类型中是不存在的。基本数据类型:直接存储数据值,占用的空间固定。这些类型直接存储了基本的数值或字符,它们在内存中占据固定的空间大小,不是对象,因此没有与之相关的方法。

2024-07-29 21:18:32 599

原创 如何评判一个算法的好坏

算法定义:为解决一个问题而采取的方法和步骤,称为“算法”。

2023-11-21 16:15:46 2829 1

原创 java、c++ 斐波那契数列

斐波那契数列的两种算法实现(递归和迭代) java c++

2023-11-20 21:36:09 193 2

空空如也

空空如也

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

TA关注的人

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