矩阵leetcode 100 240

AT_arc100_b 题解

题意 这道题是让我们把一段区间分成四个不为空的连续子序列,并算出每个区间的和,最后用四个和的最大值减去最小值,算出最终答案。 分析 大家首先想到的肯定是暴力法用三个循环枚举四个区间,对于每一个区间,在单独算和,这样的时间复杂度 $O(n^4)$,肯定会超时。 现在我们进行优化:最后求和的过程我们可以 ......
题解 AT_arc 100 arc AT

Hessian矩阵简介

1. 梯度(Gradient) 当我们在多维空间(例如,多个变量的情况)中谈论函数的变化时,我们使用梯度来表示这种变化。梯度是一个向量,其每个分量都是函数关于该分量方向的偏导数。它指向函数增长最快的方向。 2. Hessian矩阵 如果我们不仅对函数如何变化感兴趣,还对函数变化的速率(即,加速度)感 ......
矩阵 Hessian 简介

LeetCode 42.接雨水

直觉来看,每一个正方形可以容纳1个单位的水。 按列来求,迭代求每一列可以容纳多少单位的水,累加。 找出每一列左右两边最高的柱子,遍历时,不用关注第一列和最后一列。然后找到两边最高中较小的柱子,与当前列高度比较,大于,则可以装水,其他不可以。 代码: class Solution { public i ......
雨水 LeetCode 42

[Leetcode] 0066. 加一

66. 加一 题目描述 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 输入:digits = [1,2,3] 输出:[1,2,4] 解释:输入 ......
Leetcode 0066

[LeetCode] 2530. Maximal Score After Applying K Operations

You are given a 0-indexed integer array nums and an integer k. You have a starting score of 0. In one operation: choose an index i such that 0 <= i < ......
Operations LeetCode Applying Maximal After

Leetcode19. 删除链表的倒数第 N 个结点

题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 提交的代码 class Solution { //快慢指针 public ListNode removeNthFromEnd(ListNode head, int n) { ListNode fakeHead=new ......
结点 Leetcode 19

算法训练day31 LeetCode 491.46.47.

算法训练day31 LeetCode 491.46.47. 491.递增子序列 题目 491. 递增子序列 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) 递增子序列,意味着不能改变数组中元素顺序 class Solution { private: vect ......
算法 LeetCode day 491 31

Leetcode24. 两两交换链表中的节点

题目描述 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 示例 提交的代码 class Solution { ListNode nextNode; public ListNode swapPairs(ListNod ......
节点 Leetcode 24

Leetcode206. 反转链表

题目描述 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 提交的代码 class Solution { public ListNode resultHead; public ListNode reverseList(ListNode head) { if(head==nul ......
Leetcode 206

[Leetcode] 0058. 最后一个单词的长度

58. 最后一个单词的长度 题目描述 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 示例 1: 输入:s = "Hello World" 输出:5 解释:最后一个单词是“World”, ......
单词 长度 Leetcode 0058

Julia notebook:矩阵乘法

在本次notebook中,我们将: 并行化一个简单的算法 学习不同并行策略的performance 使用Julia进行实现 问题描述 假设 所有矩阵,包括A,B和C都初始存储在master process 最终的结果会将在C中被覆盖 步骤 为了实现并行化,我们将遵循以下步骤: 确定顺序算法中可以并行 ......
乘法 矩阵 notebook Julia

【转】,接上面3篇.Implement Sql Database Driver in 100 Lines of Go

原文: https://vyskocil.org/blog/implement-sql-database-driver-in-100-lines-of-go/ Implement Sql Database Driver in 100 Lines of Go 2019.02.18 Go databas ......
Implement Database Driver Lines 100

[Leetcode] 0035. 搜索插入位置

35. 搜索插入位置 题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums = [1,3,5,6], target = 5 输出: 2 示例 ......
Leetcode 位置 0035

稀疏矩阵快速转置

如果需要将一个使用三元组形式存储的稀疏矩阵进行转置,当然可以直接交换每一个结点的行和列。但这样做的问题在于,原矩阵是按行数升序排列的,转置之后的矩阵就会变为无序的。 快速转置算法的目的就在于得到一个同样有序排列的转置后矩阵。 三元组和稀疏数组定义 #define MAXSIZE 12500 type ......
矩阵

[Leetcode] 0027. 移除元素

27. 移除元素 题目描述 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 说明: 为 ......
Leetcode 元素 0027

[Leetcode] 0027. 移除元素

27. 移除元素 题目描述 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 说明: 为 ......
Leetcode 元素 0027

leetcode200 岛屿数量

链接 https://leetcode.cn/problems/number-of-islands/description/ 思路 跟岛屿周长差不多...但我觉得这个比岛屿周长还简单。不知道为什么这个算中等题目,岛屿周长算简单题目 代码 class Solution: def numIslands( ......
岛屿 leetcode 数量 200

Leetcode707. 设计链表

题目描述 你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。 如果是双向链表,则还需要属性 prev 以指示链表中的上一个节点。假设链表中的所有节点下标从 0 开始。 实现 ......
Leetcode 707

leetcode274 H指数 —— 排序后遍历/差分 c++

给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。 根据维基百科上 h 指数的定义:h 代表“高引用次数” ,一名科研人员的 h 指数 是指他(她)至少发表了 h 篇论文,并且每篇论文 至少 被引用 h 次 ......
leetcode 指数 274

Leetcode203.移除链表元素

题目描述 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点。 示例 提交的代码 /** * Definition for singly-linked list. * public class ListNode { ......
Leetcode 元素 203

[Leetcode Weekly Contest]367

链接:LeetCode [Leetcode]2903. 找出满足差值条件的下标 I 给你一个下标从 0 开始、长度为 n 的整数数组 nums ,以及整数 indexDifference 和整数 valueDifference 。 你的任务是从范围 [0, n - 1] 内找出 2 个满足下述所有条 ......
Leetcode Contest Weekly 367

Leetcode 34. Find First and Last Position of Element in Sorted Array

题解 用了两次二分,分别计算第一个>=target的元素位置和第一个>target的元素位置。闭区间二分,[l,r]是未知的,保证每次答案都在[l,r]中,定义清楚nums[l-1]和nums[r+1]和target的关系。因为是while(l < r),所以到l == r时跳出循环,分析l == ......
Leetcode Position Element Sorted Array

numpy矩阵运算

In [1]: import numpy as np In [2]: # 创建3个矩阵 a = np.arange(15).reshape(3,5) b = np.arange(15,30).reshape(3,5) c = np.array([9,8,7,6]) In [3]: a Out[3]: ......
矩阵 numpy

周赛363 Leetcode 2861. 最大合金数

题解 k个小问题,对每台机器分别计算这台机器最多能制造出多少合金,然后所有机器取max,就是最大合金数。 参数太多不好直接算 如果暴力,枚举制造1份合金,2份合金,... ,但是budget和stock都是1e8,会超时 但是暴力可以给我们一个启发:制造的合金数越多,花的钱越多。我们是否可以猜一个答 ......
Leetcode 2861 363

矩阵理论笔记1

第一讲 线性代数回顾 定理和性质 设\(A=(\alpha_{1},\alpha_{2},\alpha_{3},...,\alpha_{m})\),其中\(\alpha_{i}\)是一个n维列向量,那么有下面命题等价: 1.1. \(b\in L(\alpha_{1},\alpha_{2},\alp ......
矩阵 理论 笔记

LeetCode54. 螺旋矩阵Ⅰ

题目描述 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 提交的代码 class Solution { public List<Integer> spiralOrder(int[][] matrix) { //行数 int m=matrix.l ......
矩阵 螺旋 LeetCode 54

leetcode45 跳跃游戏2——贪心 (C++/Python)

题目描述: 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: 0 <= j <= nums[i] i + j < n ......
leetcode Python 45

LeetCode59. 螺旋矩阵Ⅱ

题目描述 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 提交的代码 class Solution { int matrixLen=0; public int[][] generateMatrix(int n) ......
矩阵 螺旋 LeetCode 59

矩阵优化dp

都快csps了,还什么都不会的菜鱼(我估计着马上就可以改了这句话了,成了都快noip了) 矩阵 我们要用矩阵优化dp,首先要知道矩阵是个什么东西(感觉其实可以不用知道)。 矩阵的很多定义啥的都可以选择去oi-wiki上去进行学习。很简单的一堆定义。读者自学不难,这里就不多赘述。 矩阵加法 就是将对应 ......
矩阵

OpenGL入门——矩阵变换与坐标系统

一、OpenGL的数学库GLM 向量和矩阵的运算就不作说明了,直接介绍OpenGL中如何使用矩阵变换。 GLM(官网:OpenGL Mathematics (g-truc.net))是OpenGL Mathematics的缩写,它是一个只有头文件的库,也就是说只需包含对应的头文件就行了,不用链接和编 ......
矩阵 坐标 OpenGL 系统