Alex Li的学习笔记

不想学习…

继承

继承使用关键词extends,继承格式为class Son extends Father{}
Java不支持多继承(一个类同时继承自好几个类),支持多重继承、不同类继承同一个类。

特性

  • 子类会继承父类的非private的属性和方法;
  • 子类可以添加自己新的属性和方法;
  • 子类可以重写/实现父类的方法/抽象方法;

    继承关键字

    extends关键字: 继承自某一个父类;
    implements关键字: 继承接口;
    super和this: super用于实现对父类成员的访问,比如在实现子类的构造方法时可以直接调用super(可有参数)来完成父类的构造;this是自己的引用,常用于方法或者构造方法里,若方法里的传参有和类中相同名字的参数,使用this.name = name可以实现调用,如果没有相同的参数,直接使用名字就能完成操作,不需要this;

阅读全文


参考:黑马程序员(Bilibili) and 菜鸟教程

基础知识

  1. 所有的Java程序都从入口public static void main(String[] args)进入,字段分别为访问修饰符、关键子、返回类型、方法名、(输入变量)。
  2. 文件名要与public class的类名相同。
  3. 命令行运行方法:

    javac HelloWorld.java //编译为class文件
    java HelloWorld //运行class文件
  4. 注释:单行注释//,多行注释/*注释*/
  5. 变量类型:
    变量类型

阅读全文


数据结构是大一下的课程,总体学的还好,就当复习一下,以及看看有没有什么其他内容。

链表与邻接表

数组模拟单链表

使用两个数组e[N]nxt[N],使用下标关联起来。其他操作与正常链表一样。

数组模拟双链表

使用三个数组e[N]l[N]r[N]

初始化:

r[0] = 1;
l[1] = 0;

阅读全文


本节主要学习双指针、位运算、离散化、区间合并等知识。

双指针算法

常见类型:指向两个不同序列 或者 指向同一个系列的不同位置。

image-20250731213418888

通用模版

for(i = 0, j =0; i < n; i++){
    while(j<i && check(i,j)) j++;
    //每道题目的具体逻辑
}

阅读全文


暑假预习的C++,突然发现有笔记,然后就发现我就学了一点就没学了,主要内容为C++的变量类型、命名空间和类,主要学习与C不同的内容,更多为了写算法。

变量类型

自动变量类型

Auto类型

auto 是C++11引入的一个关键字,用来自动推断变量的类型。也就是说,你声明变量时,不用显式写出类型,编译器会根据初始化表达式自动推断变量的类型。

int a = 2;
auto b = a;//b的数据类型也是int

const int a = 2;
auto b = a;//b的数据类型的const int

auto a;//错误,必须有初始化定义

也可以用来写函数的返回类型。

auto 可以推断出const类型和指针,但是无法推出引用类型。

阅读全文