数组

Alfred king7 小时前
算法·leetcode·职场和发展·数组·排序·双指针
Leetcode 四数之和和三数之和的类似,首先需要对数组进行排序。用两个嵌套的外部循环(i 和 j)来固定潜在四元组的前两个数字。为了避免重复的四元组,代码会跳过连续相同的数字,无论是对 i 还是对 j。在这些循环内部,它初始化两个指针 left 和 right,left 指向 j 之后的位置,right 指向数组末尾。这两个指针随后向内移动,寻找另外两个数字,使其与 nums[i] 和 nums[j] 相加后等于 target。如果当前和小于 target,left 指针向右移动;如果大于 target,right 指针向左移
Alfred king1 天前
矩阵·动态规划·数组
面试150 不同路径Ⅱ本题采用动态规划的方法来求解,其中 dp[i][j] 表示从起点到达位置 (i, j) 的路径总数。关键在于初始化:如果起点所在位置的元素不是障碍(即不为 1),则初始路径数设为 1。接着分别初始化第一行和第一列,如果当前位置不是障碍,且前一个位置可达,则路径数为 1,否则为 0。在填充整个 dp 数组的过程中,只要当前位置不是障碍,通过状态转移公式 dp[i][j] = dp[i-1][j] + dp[i][j-1] 更新路径总数。最终返回 dp[m-1][n-1],即到达终点的路径数。
SoveTingღ1 天前
c语言·unix·指针·数组·嵌入式软件
【C语言】数组和指针一样吗?目录为什么可以像指针一样使用数组?为什么可以像数组一样使用指针?数组和指针的区别总结对于一些初学的小伙伴来说,最大的误区就是认为指针和数组是一样的。这是很严重的一个问题,数组本身是来顺序存储一系列同类型数据的,而指针是指向内存地址的,虽然两者在某些地方可以相互替代使用,但这并不代表两者相同。
Alfred king4 天前
线性代数·矩阵·二分查找·数组
面试150 搜索二维矩阵直接遍历搜寻,逐个判断即可Z字形搜索从矩阵的右上角(第一行最后一列)开始。若当前元素等于 target,则返回 True。如果当前元素小于 target,说明目标可能在更大的元素中,将行索引加一(向下移动);反之,若当前元素大于 target,则列索引减一(向左移动)。重复上述过程,直到找到目标或越界结束搜索。
Alfred king4 天前
面试·职场和发展·贪心·数组··排序
面试150 IPO首先,将每个项目的启动资本需求和对应的利润配对,组成一个二元组列表,并根据所需资本从小到大进行排序。这样可以确保在遍历项目列表时,能按所需资本的升序处理。接着,使用一个最大堆(通过在堆中存入利润的负值来实现)来维护当前资本下所有可选项目的利润。在每一轮(最多进行 k 轮)中,程序会将当前可承受的所有项目(即资本需求不超过当前拥有资本的项目)加入最大堆,然后从中选择利润最高的项目(堆顶元素),执行该项目并将其利润加到当前资本上。如果在某一轮没有任何可执行的项目,算法会提前退出。最终,返回选择最多 k 个项目
Alfred king5 天前
矩阵··数组·分治
面试150 建立四叉树采用递归分治的思路构建四叉树。首先判断当前区域内的值是否全部相同,若是,则构建一个叶子节点;若否,则将区域划分为四个子区域(左上、右上、左下、右下),对每个子区域递归构建对应的子节点,并将其作为当前非叶子节点的四个子树。通过不断划分和合并,实现将二维网格压缩为一棵结构紧凑的四叉树。
Alfred king7 天前
面试·职场和发展·数组·队列·分治
面试150 环形子数组的最大和通过分情况处理,先求出非环形情况下的最大子数组和(max_sum),然后用类似方式求出最小子数组和(min_sum)。由于环形最大子数组可能由总数组和减去中间最小子数组得到,因此再计算总和 total - min_sum 与 max_sum 进行比较,取两者的较大值作为最终答案。注意到如果数组全为负数,此时 total - min_sum 等于 0,会误导结果,因此单独判断 max_num < 0 的情况,直接返回最大值,避免错误。该方法充分利用了Kadane算法的优雅特性,时间复杂度为 O(n)。
Alfred king1 个月前
leetcode·游戏·面试·数组
面试150 生命游戏深度优先遍历的思路,对当前细胞八个方向进行遍历,统计存活的细胞,并通过标记修改board数组,如果细胞死亡则标记为-1,细胞复活标记为2。再次遍历数组,然后根据标记修改数组即可
Tee xm2 个月前
java·数据结构·算法·数组·遍历
算法修仙传 第一章 灵根觉醒:数组基础与遍历青阳镇少年林玄在测灵大典上,体内突然迸发出七色光芒。"竟是传说中的数组灵根!"传功长老激动得白须颤抖。
小学生的信奥之路2 个月前
数据结构·算法·leetcode·前缀和·数组
力扣1991:找到数组的中间位置(前缀和)小学生一枚,自学信奥中,没参加培训机构,所以命名不规范、代码不优美是在所难免的,欢迎指正。标签: 数组、前缀和
Tisfy3 个月前
算法·leetcode·题解·数组·遍历
LeetCode 1550.存在连续三个奇数的数组:遍历力扣题目链接:https://leetcode.cn/problems/three-consecutive-odds/
寒山李白3 个月前
java·学习·数组
JavaSE核心知识点01基础语法01-04(数组)🤟致敬读者📘博主相关📃文章前言在Java中,数组是一种基本的数据结构,用于存储固定大小的同类型元素序列。 数组一旦被创建,其大小就是固定的。 数组在Java中是通过类实现的,但你也可以直接使用数组类型。 下面是一些关于如何在Java中定义和使用数组的基本步骤和示例。
编程火箭车3 个月前
数据结构·java基础·数组·编程入门·array·数组初始化·照片管理
用手机相册教我数组概念——照片分类术[特殊字符][特殊字符]数组就像实体相册你有没有遇到过这些崩溃瞬间? 👉 想找去年生日照片,却在相册里翻了半小时 👉 听说数组是编程基础,但总被索引搞到怀疑人生 👉 明明存了3张照片,代码却提示「数组越界」
YuCaiH3 个月前
笔记·leetcode·c·数组
数组理论基础数组是计算机科学中最基本的数据结构之一数组的概念:存放在连续内存空间上的相同类型数据的集合【eg.】将10个整型数据1-10存放在数组arr中
刚入坑的新人编程3 个月前
c语言·数据结构·c++·链表·数组
数据结构——栈和队列目录1.栈(stack)1.1 模拟实现1.1.1 定义栈1.1.2 初始化栈1.1.3 销毁栈编辑1.1.4 入栈----栈顶
carpell4 个月前
python·链表·字符串·数组·双指针法
【双指针法】:这么常用的你怎么能不知道一文带你回顾双指针法的各种应用。本文用于记录自己的学习过程,同时向大家进行分享相关的内容。本文内容参考于 代码随想录 同时包含了自己的许多学习思考过程,如果有错误的地方欢迎批评指正!
梁辰兴4 个月前
数据结构·算法·深度优先·数组
数据结构实验3.3:求解迷宫路径问题从一个迷宫的入口到出口找出一条通路。用一个二维数组 MAZE(1:m,1:n) 模拟迷宫,数组元素为 0 表示该位置可以通过, 数组元素为 1 表示该位置不可以通行。MAZE(1,1) 和 MAZE(m,n) 分别为迷宫的入口和出口。
Tisfy4 个月前
算法·leetcode·题解·数组·遍历·哈希表
LeetCode 3396.使数组元素互不相同所需的最少操作次数:O(n)一次倒序遍历力扣题目链接:https://leetcode.cn/problems/minimum-number-of-operations-to-make-elements-in-array-distinct/
知初~4 个月前
java·链表·map·红黑树·数组·列表
集合与容器:List、HashMap(II)目录一、ArrayList1. 核心数据结构2. 动态扩容机制3. 添加元素流程场景1:第一次添加元素(空数组扩容)
podongfeng4 个月前
java·算法·leetcode·数组·前后缀
leetcode每日一题:数组美丽值求和今天的每日一题原题是2278. 字母在字符串中的百分比,直接模拟,逐个匹配,统计letter在原始字符串s中出现的次数,然后再计算所占百分比即可。更换成前几天遇到的更有意思的一题来写这个每日一题。