随笔分类 -  笔试

个人笔试刷题记录
摘要:阿里巴巴2023092501 题目描述 在一个 ( n × n ) 的正方形训练场上,每个位置都有一枚硬币。小明从左上角 (0, 0) 出发,跳跃可以按以下方式进行: 向右走一步,再向上或向下走两步。 向右走两步,再向上或向下走一步。 小明不能跳出训练场,也不能往回跳。目标是帮助小明获得尽可能多的硬 阅读全文
posted @ 2024-07-06 13:47 菠萝包与冰美式 阅读(8) 评论(0) 推荐(0) 编辑
摘要:[01背包] (https://programmercarl.com/背包理论基础01背包-1.html#思路:~:text=%23-,动态规划:01背包理论基础,-本题力扣上) 背包基础理论还得是卡哥 二维dp数组 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得 阅读全文
posted @ 2024-06-23 17:05 菠萝包与冰美式 阅读(16) 评论(0) 推荐(0) 编辑
摘要:LeetCode 300. 最长递增子序列 LeetCode674. 最长连续递增序列 题解:最长上升子串模板题 定义fi表示以i结尾的最长上升子串 nums[i-1] < nums[i],则有f[i] = f[i-1] + 1 nums[i-1] > nums[i],则有f[i] = 1 publ 阅读全文
posted @ 2024-06-17 11:27 菠萝包与冰美式 阅读(2) 评论(0) 推荐(0) 编辑
摘要:1 图论 1.1 图的建立 1.1.1 领接表边权建图 import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Main { // 定义图的邻接表表示 static List< 阅读全文
posted @ 2024-06-04 21:13 菠萝包与冰美式 阅读(4) 评论(0) 推荐(0) 编辑
摘要:BFS通常用于解决最短路问题。一旦题目提到“最短”,就要考虑是否可以用BFS。 BFS适用于边权为0或1的问题。如果所有边权都是1,则可以直接用BFS。如果有边权为0,则需用双端BFS,也可用Dijkstra算法。 在BFS中,分为单源BFS和多源BFS。单源BFS从一个起点开始,逐层扩展搜索。多源 阅读全文
posted @ 2024-05-29 10:39 菠萝包与冰美式 阅读(53) 评论(0) 推荐(0) 编辑
摘要:Leetcode 329. 矩阵中的最长递增路径 矩阵中的最长递增路径 给定一个 m x n 的整数矩阵 matrix,找出其中最长递增路径的长度。对于每个单元格,你可以往上、下、左、右四个方向移动。你不能在对角线方向上移动或移动到边界外。 题解:记忆化搜索 我们使用记忆化搜索(Memoizatio 阅读全文
posted @ 2024-05-25 10:33 菠萝包与冰美式 阅读(28) 评论(0) 推荐(0) 编辑
摘要:华为20220923 题目描述 有一家云存储服务提供商,他们的存储系统采用主从模式以确保高可用性。当主节点发生故障时,系统会自动切换到备用节点。为了保证系统的稳定性,需要检测服务状态,并在必要时触发主备切换。 存储系统中的服务有依赖关系,每个服务最多依赖一个其他服务,且依赖关系不成环。某个服务故障时 阅读全文
posted @ 2024-05-23 20:30 菠萝包与冰美式 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1.1 排列组合问题 排列组合问题还得是卡子哥讲的通透 void backtracking(参数) { if (终止条件) { 存放结果; return; } for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) { 处理节点; backtracking(路径,选择列表); // 递 阅读全文
posted @ 2024-05-10 08:41 菠萝包与冰美式 阅读(130) 评论(0) 推荐(0) 编辑
摘要:1.0 二分查找概念 key words: 单调区间、最大化最小值(最小化最大值)、时间复杂度O(logn) 1.1 二分模板 模板来自于 AK机大厂笔试 星球。 1.1.1 在非递减数组中找到第一个 ≥ x 的数 public int lowerBound(int[] nums, int x) { 阅读全文
posted @ 2024-04-29 23:20 菠萝包与冰美式 阅读(9) 评论(0) 推荐(0) 编辑
摘要:1.0 并查集概念 对于具有传递性质、联通集合的题目可以考虑并查集。 1.1 并查集模板 以下模板来自于 原题链接 有n个数,编号是 1~n,最开始每个数各自在一个集合中, 现在要进行 m 个操作,操作共有两种:1. M a b,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则 阅读全文
posted @ 2024-04-23 13:11 菠萝包与冰美式 阅读(10) 评论(0) 推荐(0) 编辑
摘要:1.0 树状数组概念 【五分钟丝滑动画讲解 | 树状数组 | 21智人马同学】 树状数组用于高效计算数组前缀和及支持单点更新操作。与前缀和区别在于树状数组可以在O(log n) 的时间复杂度支持单点更新操作。 其数学证明 参考 树状数组的基本原理 1.1 树状数组的性质 lowbit函数 : low 阅读全文
posted @ 2024-04-22 13:02 菠萝包与冰美式 阅读(27) 评论(0) 推荐(0) 编辑
摘要:哈希入门 LeetCode 1. 两数之和 注意添加顺序,先判断再添加... class Solution { public int[] twoSum(int[] nums, int target) { //{nums value:index} Map<Integer,Integer> map = 阅读全文
posted @ 2024-04-20 22:53 菠萝包与冰美式 阅读(7) 评论(0) 推荐(0) 编辑
摘要:差分基本概念及其性质 :可以看看这个视频 b站up 星垂月朦胧 给定一个数组 a ,其中 a = [a1, a2, ..., an],我们定义差分数组 d 如下: d[i] = a[i] - a[i-1] 其中,d[1] = a[1]。这个差分数组 d记录了原数组 a 相邻元素之间的差值(ai+1- 阅读全文
posted @ 2024-04-20 19:42 菠萝包与冰美式 阅读(20) 评论(0) 推荐(0) 编辑
摘要:1.1 一维前缀和 一维前缀和模板 package com.coedes.presum.mudel;/** * @description:一维前缀和 * @author: https://xuq7bkgch1.feishu.cn/docx/CAbedNJ5KobvinxdyKgcKsrlnrd * 阅读全文
posted @ 2024-04-19 15:44 菠萝包与冰美式 阅读(6) 评论(0) 推荐(0) 编辑

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