- 博客(39)
- 收藏
- 关注
原创 c++逆元运算
对除法来说,无法直接进行取模运算,所以此时要用到逆元运算。若a*x=1(mod p),其中gcd(a,p)=1,即,则称x为a关于p的逆元,或者a,x关于p互为逆元。称a的逆元为inv(a),这样就将除法取模运算 (a/b)%p 转换成。
2024-04-03 20:04:41
489
原创 解决数据库字段名称和实体类名称不一样获取数据为NULL的问题
对不一样的列名起别名,让别名和实体类的属性名一样如数据库字段名称为brand_name,实体类属性名称为brandName,写为brand_name as brandName缺点:每次查询都要定义一次别名缺点:不灵活id可能会飘红,解决方法:alt+inter-->language injection setting --> 切换SQL 为GenericSQL。
2024-04-02 15:48:18
233
原创 最长回文子串与Manacher算法
manacher算法:又名马拉车算法,能在o(n)的时间复杂度内找到最长回文子串。看了很多文章,想了很久终于搞明白了,在这写一篇笔记供后来人学习和自己复习。在模板基础上加一个变量记录最长回文子串的起始下标即可。
2024-03-01 21:54:03
234
原创 98. 验证二叉搜索树
也可以直接在中序遍历的时候比较,创建一个指针记录上一个数据的大小,通过中序遍历,两两比较元素的大小,判断是否为升序。不把指针设为 int 类型是因为数据可能有 int 类型最小值或 long long 类型最小值。如果是二叉搜索树的话,中序遍历将其转换为数组后数组有序。初学者,见解不足,如有错误请指出。
2024-01-02 21:11:12
414
原创 多线程的三种实现方式
可以从结果看到并不是执行完线程一之后再执行线程二。想要获取多线程运行的结果, 可以用第三种方法。初学者,见解不足,如有错误请指出。
2023-12-26 18:19:19
418
原创 序列化流和反序列化流
但直接写会出现 NotSerializableException 异常,所以要让Javabean类实现 Serializable 接口。序列化流使用 ObjectOutputStream 方法,把基本流包装成高级流。用 writeObject 写到文件中去。反序列化流为 ObjectInputStream。初学者,见解不足,如有错误请指出。用 readObject 读取。
2023-12-21 12:38:52
354
原创 字符缓冲流BufferedReader和BufferedWriter
public String readLine() 读取一行数据, 如果没有数据可读, 会返回 null。public viod newLine() 跨平台的换行(能根据操作系统输出不同的换行符)readLine 方法在读取时一次读一整行, 遇到回车换行结束, 但不会把回车换行读到内存中。初学者,见解不足,如有错误请指出。
2023-12-20 10:32:32
373
原创 字符输出流FileWriter
void write(String str, int off, int len) 写出一个字符串的一部分。void write(char[] cbuf, int off, int len) 写出字符数组的一部分。void write(char[] cbuf) 写出一个字符数组。void write(int c) 写出一个字符。初学者,见解不足,如有错误请指出。续写:在文件路径后加 true。
2023-12-19 17:46:27
329
原创 字符输入流FileReader
有参的 read : 把读取数据, 解码, 强转三步合并,把强转后的字符放入数组中。空参的 read : 默认一个字节一个字节读取, 遇到中文就一次读多个。初学者,见解不足,如有错误请指出。
2023-12-19 17:28:15
349
原创 字节输入流FileInputStream
读到文件末尾时, read 方法返回 -1。初学者,见解不足,如有错误请指出。用 while 循环读取。
2023-12-18 15:41:46
476
原创 字节输出流FileOutputStream
参数可输入字符串表示的路径或File对象文件不存在会创建一个新文件,但要保证父级路径存在若文件已存在,会清空文件。
2023-12-17 21:51:53
394
原创 定时器, location, 检测pc端还是安卓端, 本地存储
reload 方法刷新当前页面, 传入参数 true 时表示强制刷新。.search 获取地址中携带的参数, 符号?.hash 获取地址中的哈希值, 符号# 后面的部分。location.herf 获取完整的 URL 地址, 可用于地址的跳转。setTimeout ( 回调函数 , 等待的毫秒数 )setTimeout ( 回调函数 , 等待的毫秒数 )存储复杂数据类型要转为 JSON 字符串存储。用户数据存储在浏览器中, 刷新不丢失数据。初学者,见解不足,如有错误请指出。
2023-12-11 21:27:36
382
原创 日期对象的使用
new Date('YYYY-M-D') 等。获取指定时间 new Date('YYYY-MM-DD HH:MM:SS')方法 2 : +new Date()初学者,见解不足,如有错误请指出。方法 1 : getTime。
2023-12-09 19:00:26
376
原创 力扣1. 两数之和
把 unmap.insert(pair<int, int>(nums[i], i));加到最后就不用再判断 it->second!因为在循环遍历到 x 时 nums[x] 还未加入unmap。用 unordered_map 查询是否出现要找到元素。初学者,见解不足,如有错误请指出。
2023-12-05 21:31:37
407
1
原创 力扣202. 快乐数
利用 unordered_set 判断平方和后的结果是否曾经出现过,若出现过说明陷入无限循环,返回 False。初学者,见解不足,如有错误请指出。
2023-12-01 21:45:22
345
1
原创 349. 两个数组的交集
也可以把其中一个 unordered_set 换成数组。可以使用 unordered_set 来去重。初学者,见解不足,如有错误请指出。
2023-11-29 20:53:02
341
1
原创 242. 有效的字母异位词
定义一个数组 str ,先遍历字符串 s 中的每一个字母。]中,再遍历字符串 t 中的每一个字母。初学者,见解不足,如有错误请指出。的出现次数放入 str [
2023-11-29 20:24:32
355
1
原创 css文字溢出省略号显示
1.如果文字显示不开也强制一行内显示。3.文字溢出的时候用省略号来显示。初学者,见解不足,如有错误请指出。2.溢出的部分隐藏起来。
2023-11-29 20:01:04
349
1
原创 蛇形矩阵
hang < n && lie < n 和 hang >= 0 && lie >= 0 的位置不能互换,因为当给矩阵右下部分填充元素时hang,lie 在一定范围内会大于n,互换的话矩阵下半部分将为0。当遍历次数为奇数时 temp 为 1 ,通过hang ,lie 对 temp 的加减运算使程序向右上放入元素,当遍历次数为偶数时 temp 为 -1,通过hang ,lie 对 temp 的加减运算使程序向左下放入元素。输入一行,包含一个整数n,输出n行,每行包含n个正整数,通过空格分隔。
2023-11-26 21:22:05
367
1
原创 c++输入如何输入大整数
如果遇到要输入的数字大于 long long 等,如输入一千位数字,可以用如下方法。初学者,见解不足,如有错误请指出。定义一个 char 数组。
2023-11-24 21:53:27
616
1
原创 CSS文本属性
em指当前元素一个文字的大小,若一个字大小为12px,2em表示缩进两个字,即24px。文本装饰text-decoration。以下为三种表示方式,一般用第二种。文本缩进 text-indent。初学者,见解不足,如有错误请指出。使文本第一行首行缩进多少距离。文本对齐text-align。
2023-11-23 17:32:12
29
原创 CSS字体属性
normal 默认值;100-900 100等于normal,700等于bold。设置多个字体的意思是若用户电脑未安装第一种字体,则执行第二种,以此类推。但必须保留 font-size 和 font-family 属性,属性值不能更换顺序,不需要的属性可以省略(取默认值),normal 默认值;初学者,见解不足,如有错误请指出。否则 font 属性将不起作用。
2023-11-23 16:50:58
89
原创 力扣209. 长度最小的子数组
当 sum>=target 时执行 while 里的语句,先求出 temp 也就是连续数组的长度,用 min 函数求连续数组的最小值。然后sum-nums[left],也就是减去滑动窗口的左值,同时left++,把滑动窗口的左端往右移动一位。接着再判断sum是否>=target,若是,重复上述过程,否则sum加上下一个数,也就是把滑动窗口往右移一位。以target=7 ,vectorv{ 2,3,1,2,4,3 }为例;初学者,见解不足,如有错误请指出。运用双指针里的滑动窗口思想。
2023-11-22 22:08:22
362
1
原创 CSS简单语法
选择器是用于指定CSS样式的html标签,{}内是对该对象设置的具体样式。hl{ 属性 : 属性值;属性 : 属性值;CSS由选择器及一条或多条声明组成。初学者,见解不足,如有错误请指出。属性是对指定对象设置的样式属性。" 分开,多个键值对之间用 "属性和属性值之间用 "
2023-11-22 21:37:24
33
1
原创 力扣977. 有序数组的平方
因为绝对值大的数平方后更大,所以result数组的最大值在nums数组的最左段或最右端。初学者,见解不足,如有错误请指出。
2023-11-21 09:14:05
32
原创 力扣27移除元素
第一次循环结束left = 0,nums = [3,2,2,3] (因为nums[i]=val所以left不变)第四次循环结束left = 2,nums = [2,2,2,3] (因为nums[i]=val所以left不变)第二次循环结束left = 1,nums = [2,2,2,3]第三次循环结束left = 2,nums = [2,2,2,3]以nums = [3,2,2,3], val = 3为例。初学者,见解不足,如有错误请指出。
2023-11-19 19:58:54
21
原创 力扣704二分查找
因为left和right都有意义,遍历区间为[left , right]所以当 nums[mid]!= target 时 left 和 right 需要作+1-1操作。因为遍历区间为[left , right),nums[mid] > target 时 right = mid,因为下一次循环不会搜索到nums[right] 这里了。初学者,见解不足,如有错误请指出。
2023-11-19 18:32:02
129
原创 c++如何保留小数点后几位
printf中的*代表一个参数,n为6时,printf("%.*f", n, a);相当于printf("%.6f", a);fixed << setprecision(n)固定了有效数字位数,所以第三次输出1.01235。fixed << setprecision(n) 保留n位小数。方法一:使用setprecision(n),头文件iomanip。setprecision(n) 保留n位有效数字。输入n为6,输出为1.012346。初学者,见解不足,如有错误请指出。输入n为5,输出分别为。
2023-11-06 12:40:30
4008
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人