03 2024 档案

摘要:刷题任务 计划刷完洛谷算法2系列,每天3道题(至少一道构造题) 一周至少打一次cf和atcoder的比赛 每天写题解,并去学习有没有更优秀的算法 学习任务 每天记下30个单词 学习一门优秀的数据结构与算法课程,并独自完成多个项目,并锻炼自己的英语听力 四月第一周 学习java的面向对象进阶 补完洛谷 阅读全文
posted @ 2024-03-31 23:14 lwj1239 阅读(19) 评论(0) 推荐(0) 编辑
摘要:集合 集合中的长度不固定,集合中只能存储引用数据类型,不能够存放基本数据类型,需要变成基本数据类型对应的包装类。 基本数据类型的包装类 ArrayList ArrayList<类型> 变量名 = new ArrayList<>(); 示例代码 package arrayList; import ja 阅读全文
posted @ 2024-03-30 20:10 lwj1239 阅读(4) 评论(0) 推荐(0) 编辑
摘要:字符串 字符串截取 示例代码 package practice; import java.util.Scanner; public class phoneNumber { public static void main(String[] args) { Scanner in = new Scanne 阅读全文
posted @ 2024-03-30 00:18 lwj1239 阅读(14) 评论(0) 推荐(0) 编辑
摘要:魔板 解题思路 如果我们可以固定一个起点,那么我们把所有的走法都枚举了,那么就得到了可以走到的所有解 但题目给的起点并不是固定的,那么有没有一种函数(方法)可以把任意起点位置转换成一个固定的起点,然后终点也可以转换的呢 也就是说把一个起点和终点变成固定的其中的对应的终点 例如: 初状态:4 6 2 阅读全文
posted @ 2024-03-30 00:17 lwj1239 阅读(12) 评论(0) 推荐(0) 编辑
摘要:Key Task 解题思路 分层图最短路算法 把图中的节点和状态当作一个节点而不是原图中的点和胜利大逃亡(续)是一个模型,然后因为是求最短路所以使用bfs算法来解决 代码实现 #define _CRT_SECURE_NO_WARNINGS #include <sstream> #include<io 阅读全文
posted @ 2024-03-29 00:37 lwj1239 阅读(10) 评论(0) 推荐(0) 编辑
摘要:面向对象 一个对象的内存图 Student s = new Studen(); 加载new类的.class文件(只需要加载到方法区一次) 声明局部变量(s) 在堆中开辟一个空间 默认初始化 显示初始化 构造方法初始化 将堆内存中的地址值赋值给左边的局部变量 this关键字 是一个指向方法调用者的内存 阅读全文
posted @ 2024-03-28 22:34 lwj1239 阅读(15) 评论(0) 推荐(0) 编辑
摘要:Open the Lock 解题思路 很明显从起点到终点的距离等于终点到起点的距离,那么它就是一个无向图 那么我们可以使用dbfs来进行剪枝,来优化我们的搜索 代码实现 #define _CRT_SECURE_NO_WARNINGS #include <sstream> #include<iostr 阅读全文
posted @ 2024-03-27 23:59 lwj1239 阅读(6) 评论(0) 推荐(0) 编辑
摘要:方法 方法是程序中最小的执行单元。 方法的格式 public static 返回值类型 方法名(参数) 方法的重载 在同一个类中定义了多个相同名字的方法,这些同名方法具有相同的功能。但每个方法具有不同的参数类型或参数个数,这些同名的方法就构成了重载关系 参数不同:个数不同、类型不同、顺序不同 示例代 阅读全文
posted @ 2024-03-27 15:31 lwj1239 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Eight II A*算法介绍 迭代加深 迭代加深是一种 每次限制搜索深度的 深度优先搜索 迭代加深搜索的本质还是深度优先搜索,只不过在搜索的同时带上了一个深度 ,当 达到设定的深度时就返回,一般用于找最优解。如果一次搜索没有找到合法的解,就让设定的深度加一,重新从根开始。 既然是为了找最优解,为什 阅读全文
posted @ 2024-03-26 22:19 lwj1239 阅读(30) 评论(0) 推荐(0) 编辑
摘要:Eight 解题思路 因为终点状态是固定的,而从终点到起点是可以走到的,那么起点到终点也是可以走到的,因为它是一个无向图 那么我们可以把所有可以到达的状态存起来,而到达不了的输出不可能 那么我们就可以一次初始化,就得到所以情况了 代码实现 #include <sstream> #include<io 阅读全文
posted @ 2024-03-26 00:25 lwj1239 阅读(11) 评论(0) 推荐(0) 编辑
摘要:idea中遍历数组中使用 数组名.fori 可以自动生成一个for循环来遍历数组 数组默认初始化值: 整数和小数类型:默认为0 字符类型:默认为空格 布尔类型:默认为false 引用类型:默认为null java内存分配 栈 函数运行时使用的空间,例如main函数,进入函数栈中运行 堆 用new创建 阅读全文
posted @ 2024-03-25 01:53 lwj1239 阅读(4) 评论(0) 推荐(0) 编辑
摘要:java有八种基本的数据类型:byte、short、int、long、float、double、char、boolean 这八种数据类型的传递方式是按值传递,不是基本类型的传递方式是按引用传递 byte、short、char在进行运算的时候,会自动转换成int类型 在给long类型赋值的时候数据值应 阅读全文
posted @ 2024-03-25 01:23 lwj1239 阅读(5) 评论(0) 推荐(0) 编辑
摘要:IDEA项目结构 项目(project) 模块(module) 包(package) 类(class) IDEA的补全键 psvm:public static void main sout: System.out.println 短路逻辑运算符 &&: 短路与 ||: 短路或 如果可以确定最终表达式 阅读全文
posted @ 2024-03-25 00:24 lwj1239 阅读(13) 评论(0) 推荐(0) 编辑
摘要:Fliptile 解题思路 对于这个题目可以用递推来写 因为每次翻转只会影响一个十字架的区域,所以如果我们知道第一行的情况,那么是不是只要把第一行的所有的1在对应的下一个行的相同位置进行翻转就可以把第一行的所有的1变成0呢(重要性质) 那么只要我们不断递推下去就可以得到最后一行的状态,如果最后一行全 阅读全文
posted @ 2024-03-23 10:13 lwj1239 阅读(20) 评论(0) 推荐(0) 编辑
摘要:M - A计划 解题思路 从起点出发进行bfs,把可以走的位置入队 但碰到了传送阵的话,需要判断是不是墙和传送阵,因为这两种情况都会让骑士找不到公主 剩下的就是正常bfs的过程 代码实现 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #incl 阅读全文
posted @ 2024-03-20 22:17 lwj1239 阅读(6) 评论(0) 推荐(0) 编辑
摘要:Dungeon Master 解题思路 给格子编号,从1开始,这样我们就可以构建一个图 对这个图跑迪杰斯特拉算法就可以得到我们需要的答案 代码实现 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #incl 阅读全文
posted @ 2024-03-19 22:47 lwj1239 阅读(21) 评论(0) 推荐(0) 编辑
摘要:树状数组简介 树状数组维护信息的类型: 树状数组一般用来维护可差分的信息 比如:累加和、累加乘或者出题人出了某个可差分的信息 不可差分的信息:比如最大值、最小值 不可差分的信息一般不用树状数组来维护,而会选择线段树来维护,因为线段树维护的思考难度低 大多数情况下,线段树可以代替树状数组,两者的时间复 阅读全文
posted @ 2024-03-14 23:13 lwj1239 阅读(19) 评论(0) 推荐(0) 编辑
摘要:2789.合并后数组中的最大元素 解题思路 如果数组是升序那么我们就可以得到最大的值,最大的元素就是整个数组的和 那么通过这个特例我们可以看出只要我们后面的数是一直在增大的,那么就一定可以成为数组中的最大元素 因此我们要从后面开始遍历整个数组,这样我们就可以得到我们的最大元素 //如果数组是升序可以 阅读全文
posted @ 2024-03-14 19:55 lwj1239 阅读(5) 评论(0) 推荐(0) 编辑
摘要:299.猜数游戏 解题思路 对出现的数字在两个数组中进行统计 先计算公牛的个数,如果有那么统计的数字的数量对应减一,因为统计是用来算奶牛的数量的 遍历统计数组,奶牛的数量加上两个数组中最小的值,因为是匹配,所以不可能多出来的也可以匹配,所以是加上其中的最小值 代码实现 int min(int a, 阅读全文
posted @ 2024-03-10 20:09 lwj1239 阅读(5) 评论(0) 推荐(0) 编辑
摘要:java中定义一个类,有类的成员,类的操作,以及对类的初始化 示例代码 //定义一个人的类 public class people { String name; int age; public people(String name, int age) { this.name = name; this 阅读全文
posted @ 2024-03-07 20:42 lwj1239 阅读(2) 评论(0) 推荐(0) 编辑
摘要:225. 用队列实现栈 解题思路 push操作是直接把元素放入队列里面 pop操作时把队列头的元素放入到队列尾,重复队列元素个数减一次 top操作就是pop加push操作 代码实现 typedef struct { int q[1001]; int l; int r; } MyStack; MySt 阅读全文
posted @ 2024-03-03 21:24 lwj1239 阅读(7) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示