- 博客(15)
- 收藏
- 关注
原创 链表面试题
首先判断极端条件,两个链表其中有一个为null时,则无需合并,直接返回非空链表即可,当两个链表都不为null时,定义一个newH来存放比较过之后较小的节点,分别取两个链表的头节点进行比较大小,将较小的节点放在newH,然后移动newH的头节点tmp,将其下一个节点的地址给到被移走的链表的头节点,让其再次与较大者进行比较,直至两个链表一个为空,全部节点都放到了新链表当中,直接将另一个非空链表拼接到newH后面即可。新链表是通过拼接给定的两个链表的所有节点组成的。8. 输⼊两个链表,找出它们的第⼀个公共结点。
2025-04-19 20:29:25
446
原创 ArrayList与线性表中的顺序表
ArrayList是Java集合框架中一个非常常用的类,它实现了List接口,是一个动态数组,即长度可以自动增长的数组。以下从多个方面对ArrayList。
2025-04-15 18:22:32
637
原创 常用方法集合
charAt 方法是用于获取字符串或 StringBuilder 中指定位置的字符。在 String 类和 StringBuilder 类中都有这个方法,但它们在功能实现上有一些细微的上下文差异。
2025-04-14 23:10:52
224
原创 泛型的深度认识
在编译时,Java编译器会将泛型类型信息从代码中移除,这个过程就叫做类型擦除。擦除后,泛型类型会被替换为其边界类型(通常是Object)或者指定的类型。•将泛型参数替换为其边界或Object。• 在必要的地⽅插⼊类型转换以保持类型安全。• ⽣成桥接⽅法以保持多态性。
2025-04-14 17:53:23
858
原创 数据结构(一)
也称为时间复杂度,主要衡量的是一个算法的运行速度。时间复杂度是衡量算法运行时间随输入规模增长的变化趋势。常见的时间复杂度从低到高有 O(1)(常数时间)、 O(logn)(对数时间)、 O(n)(线性时间)、 O(nlogn)(线性对数时间)、 O(n2)(平方时间)等。也称为空间复杂度,*+-问的5芙uiokl主要衡量的是一个算法运行过程中所需要的额外空间。常见的空间复杂度有 O(1)(常数空间)、 O(n)(线性空间)等。
2025-04-14 16:41:46
1181
原创 单例、工厂、代理模式
单例模式是一种创建型设计模式,确保一个类只有一个实例,并提供一个全局访问点来访问这个实例,其可以避免资源浪费和冲突。单例模式的特征:唯一实例:类只能创建一个实例。私有构造函数:禁止外部通过new关键字创建对象。全局访问点:通过静态方法(如getInstance())获取实例。实现单例模式的两种方式:饿汉式和懒汉式。
2025-04-02 18:03:48
880
原创 字符串—String
对于内置类型,==比较的是变量中的值,对于引用类型==比较的是引用中的地。3.1.2equals方法:按照字典序比较(字符大小的顺序)String类重写了⽗类Object中equals⽅法,Object中equals默认按照==⽐较,String重写equals⽅法后,按照如下规则进⾏⽐较,⽐如: s1.equals(s2)3.1.3compareTo方法:按照字典序比较compare方法与euqals方法不同的是,后者返回类型是boolean类型的,而前者返回类型为int类型。
2025-03-24 23:28:59
1357
原创 Javase接口完
在Java中类和类之间的关系是单继承的,一个类可以实现多个接口,接口与接口之间可以实现多继承。即用接口可以达到多继承的目的。接口可以继承另一个接口,达到复用的效果,继承时使用extends关键字。如果一个类要实现这个接口那么需要把当前接口和其接口继承的接口中所有的方法重写。
2025-03-20 23:18:58
579
原创 Javase抽象类和接口初识
如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类从语法上将抽象类使用abstract修饰。语法:public abstract class Animal(){}
2025-03-19 11:28:17
1535
原创 Javase继承完+多态
继承支持单继承,多层继承(A继承B,C继承A),不同类继承一个类,但是不支持多继承(一个子类有多个父类)注意:继承层次不要太复杂,一般不超过三层继承关系父类中被praivate修饰的成员变量,方法,在子类虽然被继承了,但是不能在子类当中调用。
2025-03-16 23:18:23
791
原创 Javase继承补充
super可以访问父类成员变量及方法,也可调用父类当中指定的构造方法。super关键字和this一样只能在非静态方法中使用,不可在静态方法中使用。
2025-03-15 16:58:01
714
原创 static关键字和继承
在Java中,继承时面向对象编程的一个重要特性,它允许一个类(子类)继承另一个类(父类)的属性和方法,从而实现代码的复用和扩展。通过extends关键字来实现继承模块:修饰符class 子类extends 父类。
2025-03-12 22:37:02
515
原创 Javase之包和封装
1.在文件的最上方(即第一条语句前面只能有注释或者空行)加一个package语句指定该源文件在哪个包里2.包的名字全部要用小写字母组成,多个单词也保持小写,若包含多个层次,之间用"."隔开。一般使用倒置的域名开头(无www)如:com.example,且自定义包不能以java开头。
2025-03-11 16:30:37
841
原创 Javase之类和对象
实例化是指用你所定义的一个类,用类重新创建对象的过程,称为类的实例化new关键字用于创建一个对象的实例,使用来访问对象中属性和方法,同一个类可以创建多个实例。
2025-03-10 17:33:23
738
原创 Javase之数组的定义和使用及操作数据工具类Arrays
数组的初始化分为动态初始化和静态初始化动态初始化:在数组创建时直接指定数组中元素的个数静态初始化:在数组创建时并bi没有制定数组元素的个数,而是直接存入与数组类型相同的数据,编译器会根据{}中元素个数自动判断出数组的长度,静态初始化时可以简写,省去后面的new T[ ]。语法格式:T[ ] 数组名称={data1,data2,data3,...,datan};数组也可按照C语言方式创建,不推荐静态初始化和动态初始化可分为两步,但是省略格式不可以。
2025-03-09 12:29:29
390
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人