AmiroKDの小屋
【AmiroKDの算法日记】2-两数相加
2. 两数相加 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例 1: 123输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807. 示例 2: 12输入:l1 = [0], l2 = [0]输出:[0] 示例 3: 12输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]输出:[8,9,9,9,0,0,0,1] 提示: 每个链表中的节点数在范围 [1, 100] 内 0 <= Node.val <= 9 题目数据保证列表表示的数字不含前导零 📖 文字题解 方法一:模拟 思路与算法 由于输入的两个链表都是逆序存储数字的位数的,因此两个链表中同一位置的数字可以直接相加。 我们同时遍历两个链表,逐位计算它们的和,并与当前位置的进位值相加。具体而言,如果当前两个链表处相应位置的数字为 n1,n2, ...
【AmiroKDの算法日记】141-环形链表
141. 环形链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。 如果链表中存在环 ,则返回 true 。 否则,返回 false 。 示例 1: 123输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部连接到第二个节点。 示例 2: 123输入:head = [1,2], pos = 0输出:true解释:链表中有一个环,其尾部连接到第一个节点。 示例 3: 123输入:head = [1], pos = -1输出:false解释:链表中没有环。 提示: 链表中节点的数目范围是 [0, 104] -105 <= Node.val <= 105 pos 为 -1 或者链表中的一个 有效索引 。 **进阶:**你能用 O(1)(即,常量)内存解决此问题吗? ...
【AmiroKDの算法日记】206-反转链表
206. 反转链表 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: **输入:**head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: **输入:**head = [1,2] 输出:[2,1] 示例 3: **输入:**head = [] 输出:[] 提示: 链表中节点的数目范围是 [0, 5000] -5000 <= Node.val <= 5000 **进阶:**链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题? 方法一:迭代 就是将整个链表的指针反转 假设链表为 1→2→3→∅,我们想要把它改成 ∅←1←2←3。 在遍历链表时,将当前节点的 next 指针改为指向前一个节点。由于节点没有引用其前一个节点,因此必须事先存储其前一个节点。在更改引用之前,还需要存储后一个节点。最后返回新的头引用。 12345678910111213141516171819202122232425262728293031/** * Definition for singly-linked list. * publ ...
【AmiroKDの算法日记】240-搜索二维矩阵 II
240. 搜索二维矩阵 II 编写一个高效的算法来搜索 _m_ x _n_ 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例 1: **输入:**matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 5 **输出:**true 示例 2: **输入:**matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 20 **输出:**false 提示: m == matrix.length n == matrix[i].length 1 <= n, m <= 300 -109 <= matrix[i][j] <= 109 每行的所有元素从左到右升序排列 每列的所有元素从上到下升序排列 -109 & ...
【AmiroKDの算法日记】48-旋转图像
48. 旋转图像 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 12输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5] 示例 2: 12输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7] 提示: m == matrix.length n == matrix[i].length 1 <= m, n <= 10 -100 <= matrix[i][j] <= 100 1234567891011121314151617class Solution { public void rotate(int[][] matrix) { int n = matrix.length; //单行的长 int[][] matrix_new = new int[n][n]; //定义一个新的数 ...
【AmiroKDの算法日记】54.螺旋矩阵
54. 螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 12输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5] 示例 2: 12输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7] 提示: m == matrix.length n == matrix[i].length 1 <= m, n <= 10 -100 <= matrix[i][j] <= 100 方法一:模拟 可以模拟螺旋矩阵的路径。初始位置是矩阵的左上角,初始方向是向右,当路径超出界限或者进入之前访问过的位置时,顺时针旋转,进入下一个方向。 判断路径是否进入之前访问过的位置需要使用一个与输入矩阵大小相同的辅助矩阵 visited,其中的每个元素表示该位置是否被访问过。当一个元素被访问时,将 visited 中的对应位置的元素设为已访问。 如何判断路径是否 ...
OpenWRT最新23.05.5软件源镜像
123456src/gz openwrt_core https://mirrors.ustc.edu.cn/openwrt/releases/23.05.5/targets/armsr/armv8/packages/src/gz openwrt_base https://mirrors.ustc.edu.cn/openwrt/releases/23.05.5/packages/aarch64_generic/base/src/gz openwrt_luci https://mirrors.ustc.edu.cn/openwrt/releases/23.05.5/packages/aarch64_generic/luci/src/gz openwrt_packages https://mirrors.ustc.edu.cn/openwrt/releases/23.05.5/packages/aarch64_generic/packages/src/gz openwrt_routing https://mirrors.ustc.edu.cn/openwrt/releases/23.05.5 ...
解决Idea中,springBoot启动后项目是灰色的情况
解决Idea中,springBoot启动后项目是灰色的情况 选中灰色的项目点击保存即可
秒解!解决vercel注册问题Your account requires further verification. Please contact registration@vercel.com to
秒解!解决vercel注册问题Your account requires further verification. Please contact [email protected] to 在注册的时候使用国外知名的邮箱,比如gmail,outlook就可以直接注册进去,然后再绑定GitHub账号 编辑
avatar
🐟认真摸鱼中
AmiroKD
曾以为走不出的日子,现在都回不去了。
前往小窝
公告栏
没想到做个博客也不简单🥲
小站资讯
文章数目 :
31
本站总字数 :
12.5w
本站访客数 :
本站总访问量 :
最后更新时间 :
空降评论复制本文地址
随便逛逛昼夜切换阅读模式关于博客美化设置切换全屏打印页面