- 博客(24)
- 收藏
- 关注
原创 17. 电话号码的字母组合 dfs
其中 private final List<String> ans = new ArrayList<>();不能声明为静态变量 否则会报错。注意static的使用 全局变量的生命周期跟随整个类 为类内所有成员访问同一个变量 会有问题。
2024-08-13 20:21:51
227
原创 AcWing 802. 区间和 离散化
为什么这里二分写int mid = (l + (r - l)) >> 1;就会TLE 而改为int mid = (l + r) >> 1;就AC(换成 / 也是一样的) 不懂。
2024-08-12 23:01:24
292
原创 AcWing795. 前缀和
原数组: a[1], a[2], a[3], a[4], a[5], …前缀和: S[i] = a[1] + a[2] + a[3] + …前缀和 Si为数组的前 i项和。
2024-08-10 21:52:10
265
1
原创 790. 数的三次方根 二分
这里面的a,b要根据具体二分的范围来指定,对于c的值,如果题目中要求保留4位小数,c取1e-6,如果题目中要求保留6位小数,那c取1e-8。
2024-08-10 21:10:36
167
原创 对递归的理解(可以逆向解决一些问题)
递归即调用函数本身,传递到递归的基本情况后停止开始归。于是可以用来解决一些需要逆向才能解决的问题,比如说:“整数转二进制”,“逆序输出字符串”等等。
2023-12-17 21:59:30
1049
1
原创 二分查找(整数二分通用模板)
给定一个按照升序排列的长度为 n 的整数数组,以及 q 个查询。对于每个查询,返回一个元素 k 的起始位置和终止位置(位置从 00 开始计数)。如果数组中不存在该元素,则返回-1 -1。
2023-12-15 22:06:28
472
原创 归并排序 (dfs深度理解)
然后递归地对左半部分和右半部分分别进行排序,在左右两部分排好序后,定义两个指针(注意不是真正意义上的指针,是两个标记,可以理解为数组的下标)。一个指向左半部分的首记为 i,另一个指向右半部分的首记为 j,比较q[ i ]和q[ j ]两个位置上数组元素的大小,如果q[ i ]
2023-12-14 16:38:19
1176
1
原创 头歌 谁考了第k名 (结构体数组的排序)
接下来就是排序问题,这里想到用sort排序,先要添加一个头文件#include<algorithm>,写结构体需要注意很多细节,sort()后面的参数中不能使用数组下标,而是用数组名+n,最后用一个bool函数判断大小。因为刚开始的sort函数不会用,没有传入第三个参数,一直报错,所以想到直接用冒泡写,这里注意因为冒泡排序函数中传入的数组本身就是地址,会直接修改地址位置上的数值,所以不需要返回值,void定义即可。在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第。
2023-12-12 09:00:02
670
原创 头歌 数位组合之八(函数中返回地址时怎么写)
本关任务:函数fun的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。注意:请勿改动主函数 main 和其它函数中的任何内容,仅在函数 fun 中填入你编写的若干语句。
2023-12-11 23:12:30
556
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人