-
Person p = new Person()
1. JVM会先去方法区中寻找相应类的.class文件(即Person.class),若存在则加载到内存中(如果该类存在父类,则先加载父类),不存在则将相关.class加载到方法区中 2. 如果 p 定义在主方法中,则会在栈空间开辟一个变量空间 p 3. 在堆内存给对象分配空间 4. 对对象中的成员 -
[LeetCode每日1题][中等] 1162. 地图分析
文章目录题目DFS解法多源BFS解法DP法参考 题目 1162. 地图分析 - 力扣(LeetCode) DFS解法 class Solution { int N; vector<vector<int>> dist; // 存放结点到陆地的最短距离 vector<vector<int>> *grid -
[LeetCode每日1题][简单] 198. 打家劫舍 / 面试题 17.16.按摩师
文章目录题目动态规划解法复杂度 题目 俩题是一样的 面试题 17.16. 按摩师 - 力扣(LeetCode) 198. 打家劫舍 - 力扣(LeetCode) 动态规划解法 dp值表示到目前为止可以收获的最高金额,到一个新房屋i时,有两种选择 偷窃,该点dp值等于该点金额+dp[i-2] 不偷窃, -
[LeetCode每日1题][中等] 945. 使数组唯一的最小增量
文章目录题目暴力解法计数补偿法参考 题目 945. 使数组唯一的最小增量 - 力扣(LeetCode) 暴力解法 很容易想到的一个解法是排序,对A[i-1] >= A[i]的情况,把A[i]变成A[i-1] + 1,结果 += 步长即可。但这样做很低效,时间复杂度为O(NlogN)。 class S -
[LeetCode每日1题][中等] 365. 水壶问题
文章目录题目数学解法深度优先搜索参考 题目 365. 水壶问题 - 力扣(LeetCode) 数学解法 裴蜀定理:对于两个数x,y, 存在a,b使得ax+by = z成立当且仅当z是x与y最大公因数的倍数。 class Solution { public: bool canMeasureWater( -
Raspberry Pi 4B LAMP/LNMP配置
Raspberry Pi 4B LAMP/LNMP配置 -
Cannot find AVD system path. Please define ANDROID_SDK_ROOT
报错信息: Emulator: Process finished with exit code 1 Emulator: PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT 解决方法: 1. 删除AVD内所有镜像 2. -
[笔记]二分查找的几种写法
文章目录基本形式需要访问右邻居需要访问左右邻居C++中的二分查找参考 基本形式 left和right均为索引值 循环条件:left <= right 向左查找:right = mid-1 向右查找:left = mid+1 查找条件可以在不与元素的两侧进行比较的情况下确定 int binarySea -
[LeetCode每日1题][中等] 300. 最长上升子序列
文章目录题目DP解法思路复杂度分析实现贪心+二分解法思路复杂度分析实现参考 题目 300. 最长上升子序列 - 力扣(LeetCode) DP解法 思路 开一个长度与原数组相同的数组dp,初始值dp[0]=1。dp数组元素的含义是:到当前索引为止,最大的递增子序列长度。接下来开始遍历数组,设当前索引 -
[笔记]最大公因数与最小公倍数算法
最大公因数(Greatest Common Divisor) int gcd(int a, int b) { return b == 0 ? a : gcd(b, a % b); } 也可以直接使用C++ algorithm库中的__gcd()函数 最小公倍数(Least Common Multip