- 博客(23)
- 收藏
- 关注
原创 【算法】快速幂
给定 n组 ai,bi,pi,对于每组数据,求出 abiimodpi 的值。第一行包含整数 n。接下来 n行,每行包含三个整数 a,b,p。对于每组数据,输出一个结果,表示 a^b mod p 的值。若有错误望私信批评指正。
2024-10-04 21:57:06
220
原创 【算法】算法基础模板
一、基础算法快速排序算法模板void quick_sort(int q[], int l, int r){ //递归的终止情况 if (l >= r) return; //选取分界线。这里选数组中间那个数 int i = l - 1, j = r + 1, x = q[l + r >> 1]; //划分成左右两个部分 while (i < j) { do i ++ ; while (q[i] &
2024-10-04 16:51:49
660
原创 【java】File
返回由包含在目录中的文件和目录的名称所组成的字符串数组,这一目录是通过满足指定过滤器的抽象路径名来表示的。当且仅当不存在具有此抽象路径名指定的名称的文件时,原子地创建由此抽象路径名指定的一个新的空文件。返回此抽象路径名的父路径名的路径名字符串,如果此路径名没有指定父目录,则返回 null。返回表示此抽象路径名所表示目录中的文件和目录的抽象路径名数组,这些路径名满足特定过滤器。返回此抽象路径名的父路径名的抽象路径名,如果此路径名没有指定父目录,则返回 null。返回由此抽象路径名表示的文件或目录的名称。
2024-06-24 20:48:42
405
原创 【java】异常
一个发生由于编程错误。它们也称为。这些异常不在编译时检查,而是在运行时检查。一些常见的运行时异常是:API使用不当 - IllegalArgumentException空指针访问(缺少变量的初始化)- NullPointerException越界数组访问 - ArrayIndexOutOfBoundsException将数字除以0 - ArithmeticException如果在使用变量之前检查变量是否已初始化,则不会发生NullPointerException。
2024-06-19 22:48:02
268
原创 【java】重写 equalis comperto Date类
Java早期通过使用Date来计算时间,后来大部分Date类的方法都过时了,又转而希望用Calendar类代替Date类,然而Calendar类也是不尽如人意。java.text.DateFormat 是日期/时间格式化子类的抽象类,我们通过这个类可以帮我们完成日期和文本之间的转换,也就是可以在Date对象与String对象之间进行来回转换。Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可。
2024-06-19 11:42:02
1087
原创 【java】Stringbuilder Collection List Set Map
它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。由于,所以多数情况下建议使用 StringBuilder 类。
2024-06-18 22:19:35
1013
原创 【笔记】Java 继承 封装
4Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 B 类继承 A 类,C 类继承 B 类,所以按照关系就是 B 类是 C 类的父类,A 类是 B 类的父类,这是 Java 继承区别于 C++ 继承的一个特性。使用 implements 关键字可以变相的使java具有多继承的特性,使用范围为类继承接口的情况,可以同时继承多个接口(接口跟接口之间采用逗号分隔)。5提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系越紧密,代码独立性越差)。
2024-05-22 20:39:42
247
1
原创 【C语言】27.移除元素 - 力扣(leetcode)
示例 1: 给定 nums = [3,2,2,3], val = 3, 函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。示例 2: 给定 nums = [0,1,2,2,3,0,4,2], val = 2, 函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并原地修改输入数组。
2024-03-01 21:02:18
454
1
原创 编写函数:求最大公约数gcd()和最小公倍数lcm() (Append Code)
辗转相除法基于如下原理:两个整数的最大公约数等于其中较小的数和两数的差的最大公约数。这时,所剩下的还没有变成零的数就是两数的最大公约数。辗转相除法首次出现于欧几里得的《几何原本》(第VII卷,命题i和ii)中,而在中国则可以追溯至东汉出现的《九章算术》。从整除定义出发:若a整除b(b除以a没有余数),则b是a的倍数,a是b的约数,这里要求b不为0。因此0是任意整数的倍数(任意整数都是0的约数),但是0不能是约数。此时,余数是0,所以1071和462的最大公约数是21。
2023-12-27 23:10:00
788
1
原创 【笔记】文件读写(C语言)
fgetc() 函数从 fp 所指向的输入文件中读取一个字符。12.rewind:将文件指针重新定位到文件的开头。1.fopen:用于打开文件,并返回一个文件指针。5.fscanf:从文件中按照指定的格式读取数据。6.fread:从文件中读取指定数量的数据块。8.fprintf:将格式化的数据写入文件。11.ftell:返回当前文件指针的位置。2.fclose:用于关闭已打开的文件。3.fgetc:从文件中读取一个字符。4.fgets:从文件中读取一行数据。10.fseek:设置文件指针的位置。
2023-12-25 17:03:01
1214
原创 【笔记】链表(C语言)(指针)
insert/插入、嵌入这个函数用于创建一个新的链表节点,并为该节点分配动态内存。新节点的数据成员被设置为传入的data参数,而next指针被初始化为NULL。最后,函数返回新节点的地址,以便在其他函数中使用。// 定义一个插入节点的函数,接受链表头指针的地址和要插入的数据// 创建一个新节点,并将数据放入节点// 如果链表为空,即头节点为NULL// 将新节点的地址赋给头指针,即设置头节点} else {// 定义一个临时指针,指向链表的头节点。
2023-12-18 19:42:40
623
1
原创 【笔记】结构体和动态分配内存
结构体定义由关键字 struct 和结构体名组成,结构体名可以根据需要自行定义。...tag 是结构体标签。member-list 是标准的变量定义,比如 int i;或者 float f;,或者其他有效的>变量定义。variable-list 结构变量,定义在结构的末尾,最后一个分号之前,您可以指定一个或多个结构变量。} book;
2023-12-13 21:33:11
328
原创 马鞍数(C语言)(枚举)
求一个 n x n 矩阵中的马鞍数。马鞍数的特点是在它所在的行,它的值严格最小。在它所在的列,它的值严格最大。如果存在,那么输出三个空格隔开的正整数 x,y,v,分别表示马鞍数所在行、列(从 1 开始编号),和其数值。接下来 n 行,每行 n 个空格隔开的整数(均在 int 范围内),表示矩阵。如果不存在马鞍数,那么输出"NULL"(不含引号,注意大小写)。第一行一个整数 n(2
2023-12-13 20:00:21
671
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人