avatar
文章
129
标签
29
分类
4

首页
归档
分类
关于
阿日哥的向量空间
搜索
首页
归档
分类
关于

阿日哥的向量空间

LeetCode 747. 至少是其他数字两倍的最大数
发表于2022-01-13|计算机|LeetCode
1. 题目描述 给你一个整数数组nums,其中总是存在 唯一的 一个最大整数 。 请你找出数组中的最大元素并检查它是否 至少是数组中每个其他数字的两倍 。如果是,则返回 最大元素的下标 ,否则返回 -1 。 示例 1: 输入:nums = [3,6,1,0]输出:1解释:6 是最大的整数,对于数组中的其他整数,6 大于数组中其他元素的两倍。6 的下标是 1 ,所以返回 1 。 示例 2: 输入:nums = [1,2,3,4]输出:-1解释:4 没有超过 3 的两倍大,所以返回 -1 。 示例 3: 输入:nums = [1]输出:0解释:因为不存在其他数字,所以认为现有数字 1 至少是其他数字的两倍。 2. 算法思路 寻找第二大的元素,比较最大元素和第二大元素的两倍即可。 class Solution {public: int dominantIndex(vector<int>& nums) { if (nums.size() == 1) return 0; int max = 0x80000000, sec = 0x80000 ...
LeetCode 334. 递增的三元子序列
发表于2022-01-12|计算机|LeetCode
1. 题目描述 给你一个整数数组nums,判断这个数组中是否存在长度为3的递增子序列。 如果存在这样的三元组下标(i, j, k)且满足i < j < k,使得nums[i] < nums[j] < nums[k],返回true;否则,返回false。 示例 1: 输入:nums = [1,2,3,4,5]输出:true解释:任何 i < j < k 的三元组都满足题意 示例 2: 输入:nums = [5,4,3,2,1]输出:false解释:不存在满足题意的三元组 示例 3: 输入:nums = [2,1,5,0,4,6]输出:true解释:三元组 (3, 4, 5) 满足题意,因为 nums[3] == 0 < nums[4] == 4 < nums[5] == 6 2. 算法思路 我们可以将整个数组看作是由成若干个降序的子序列而成的。 算法初始时设置两个哨兵min =0x7FFFFFFE和mid = 0x7FFFFFFF,满足min < mid,分别表示我们要寻找的三元组中的最小值和中间值。我们假设,序列中存在一个数max ...
LeetCode 6. Z字形变换
发表于2022-01-11|计算机|LeetCode
1. 题目描述 将一个给定字符串s根据给定的行数numRows,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为"PAYPALISHIRING"行数为3时,排列如下: P A H NA P L S I I GY I R 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。 请你实现这个将字符串进行指定行数变换的函数: string convert(string s, int numRows); 示例 1: 输入:s = "PAYPALISHIRING", numRows = 3输出:"PAHNAPLSIIGYIR" 示例 2: 输入:s = "PAYPALISHIRING", numRows = 4输出:"PINALSIGYAHRPI" 解释: P I NA L S I GY A H RP I 示例 3: 输入:s = "A", numRows = 1输出:"A" 2. 解题思路 我们将Z形字符串沿垂直方向按照V形划分。 |P |A | H | N|A P |L S| ...
深入浅出OS中的并发与同步
发表于2021-12-15|计算机|操作系统
0. 并发,是机遇也是挑战 0.1 并发与并行 自从多道程序设计技术诞生以来,资源的利用率和系统的吞吐量就得到了极大的提高,也由此出现了多道批处理系统。 多道程序设计具有以下三个特点: 多道:同一时间段内有多道程序在内存中执行。 宏观上并行:系统内的多个程序都处于运行过程中的状态。 微观上串行:这些程序轮流占有CPU,交替执行。 当多道程序运行在可抢占式的操作系统上时,就产生了并发(Concurrent)问题:CPU在一个进程的指令流上的任何一点都可能产生中断,转而去执行其他进程。当系统有一个以上CPU时,那么进程(线程)的执行效率还可以得到进一步的提升,一个CPU执行一个进程(线程)时,另一个CPU可以执行另一个进程,且它们之间互不抢占CPU资源,可以同时执行,此时的这种方式我们称之为并行(Parallel)。 gantt title 三个进程并发执行 dateFormat m axisFormat %M section 进程A 占用CPU : crit, active, p1,0, 5 section 进程B ...
雅可比行列式,多元函数微积分的计算神器!
发表于2021-11-05|数学|高等数学
雅可比行列式在多元函数微积分中的应用非常广泛,我们在很多地方都能见到它的身影。合理运用雅可比行列式,可以简化我们的计算。 本文主要总结了一些雅可比行列式在多元函数微积分的计算方面的应用。 0. 什么是雅可比行列式 雅可比行列式通常称为雅可比式(Jacobian),它是以n个n元函数的偏导数为元素的行列式 。事实上,在函数都连续可微(即偏导数都连续)的前提之下,它就是函数组的微分形式下的系数矩阵(即雅可比矩阵)的行列式。 雅可比行列式来源于多元函数微分的方程组,所以自然离不开函数的微分。所谓行列式,不过是一个多元函数微分方程组的系数罢了。 1. 求隐函数方程组的导数 所以在引出雅可比行列式之前,我们有必要先探究一下多元函数方程组和它的偏导数的性质。 隐函数存在定理 根据隐函数存在定理,我们知道一个二元方程能够唯一确定一个一元函数。 一元隐函数存在定理 设二元函数满足,且在点的某邻域内有连续偏导数。则方程在点的某一邻域中唯一确定了一个具有连续导数的函数。满足且。其偏导数为: 二元隐函数存在定理 设三元函数满足,在点的某邻域内有连续偏导数,方程在点的某一邻域中唯一确定了一个具有连续 ...
二阶线性非齐次微分方程特解的五大求解方法
发表于2021-10-12|数学|高等数学
求解非齐次线性微分方程可以说是考研数学中的一大重点和难点。 本文是作者在复习考研数学的过程中,总结的一些常用的可以用于求解二阶线性非齐次微分方程的特解的方法。 我们知道,对于一个二阶线性非齐次微分方程,它的通解是它对应的二阶线性齐次微分方程的通解加上它自己的一个特解。而它所对应的二阶线性齐次微分方程的通解通常有两种情况:若该方程为常系数,我们根据特征方程容易求得通解。但若该方程为变系数,情况就稍麻烦些。大多数的变系数线性高阶微分方程不能利用初等函数求解(如,它的解是无穷级数形式的),只有对于一些特殊形式的二阶变系数线性齐次微分方程,我们才可以利用降阶法等方法求得初等函数解。 求得对应齐次方程的通解后,另一个难点在于求它的一个特解,这也正是考研数学可以说必考的知识点。考虑到变系数方程求解的难度,一般考研题如果考察求解二阶线性非齐次微分方程,则通常是常系数的(不排除变系数的情况)。 下面我们以一个二阶常系数线性非齐次微分方程为例,分别讲解五种方法如何用于求此二阶微分方程的特解。 1. 待定系数法 待定系数法是最常用也是最基本的一种方法。 该微分方程的特征方程为,得特征根,从而通解为。 现 ...
快速认识SSH认证原理
发表于2021-06-30|计算机|计算机网路
一、什么是SSH? SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。 SSH 主要由三部分组成: 传输层协议 [SSH-TRANS] 提供了服务器认证,保密性及完整性。此外它有时还提供压缩功能。 SSH-TRANS 通常运行在TCP/IP连接上,也可能用于其它可靠数据流上。 SSH-TRANS 提供了强力的加密技术、密码主机认证及完整性保护。该协议中的认证基于主机,并且该协议不执行用户认证。更高层的用户认证协议可以设计为在此协议之上。 用户认证协议 [SSH-USERAUTH] 用于向服务器提供客户端用户鉴别功能。它运行在传输层协议 SSH-TRANS 上面。当SSH-USERAUTH 开始后,它从低层协议那里接收会话标识符(从第一次密钥交换中的交换哈希H )。会话标识符唯一标识此会话并且适用于标记以证明私钥的所有权。 SSH-USERAUTH 也需要知道低层协议是否提供保密性保护。 连接协议 [SSH-CONNECT] 将多个加密隧道分成逻辑通道。它运行在用户认证协议上 ...
Xmind破解教程
发表于2021-05-25|计算机|杂项
XMind是一个全功能的思维导图和头脑风暴软件,为激发灵感和创意而生。作为一款有效提升工作和生活效率的生产力工具,受到全球百千万用户的青睐。受到全球百千万用户的青睐。本文尝试利用逆向工程破解Xmind的授权,仅供参考。 1. 破解思路 XMind基于Electron开发,在XMind安装目录下的Resource文件夹中包含了一个文件app.asar,这个文件是XMind源代码文件的一个压缩包。我们只需要将其解压,修改其中的源码再重新打包即可破解XMind。 2. 破解流程 首先需要安装nodejs,网上可以找到安装教程,这里跳过。 然后使用npm安装asar。 npm install asar -g 然后在XMind的安装目录下找到Resources文件夹,文件夹下有一个app.asar文件和一个app.asar.unpacked文件夹,将它们拷贝出来。 app.asar文件就是源码包,可以使用asar工具将源码解包出来。 asar extract app.asar directory/ 在解压出的源码文件中,打开common.js文件 $ find ./ -name common. ...
JavaEE「九」Spring MVC
发表于2020-11-09|计算机|软件工程•spring
9.1 什么是Spring MVC? SpringMVC是Spring家族的一员,Spring是将现在开发中流行的组件进行组合而成的一个框架!它用在基于MVC的表现层开发,类似于struts2框架 9.2 SpringMVC快速入门 9.2.1导入开发包 如果用Maven的,那导入Maven依赖即可 前6个是Spring的核心功能包【IOC】,第7个是关于web的包,第8个是SpringMVC包 org.springframework.context-3.0.5.RELEASE.jar org.springframework.expression-3.0.5.RELEASE.jar org.springframework.core-3.0.5.RELEASE.jar org.springframework.beans-3.0.5.RELEASE.jar org.springframework.asm-3.0.5.RELEASE.jar commons-logging.jar org.springframework.web-3.0.5.RELEASE.jar org.spring ...
JavaEE「八」Mybatis动态sql
发表于2020-11-02|计算机|软件工程•spring
我们当时刚开始做的时候,是需要在Controller中判断SQL是否已经有条件了,因为SQL语句需要拼接起来....这样干的话,就非常容易出错的。 如下的代码,如果有多个条件的话,那么拼接起来很容易出错! public String listUI() { //查询语句 String hql = "FROM Info i "; List<Object> objectList = new ArrayList<>(); //根据info是否为null来判断是否是条件查询。如果info为空,那么是查询所有。 if (info != null) { if (StringUtils.isNotBlank(info.getTitle())) { hql += "where i.title like ?"; objectList.add("%" + info.getTi ...
1…111213
avatar
Thomas
一个人的命运,当然要靠自我奋斗,但是也要考虑到历史的行程。
文章
129
标签
29
分类
4
Homepage
最新文章
Notes on PL 16 - De Bruijn, Combinators and Encodings2025-02-14
Notes on PL 15 - Fixed-Point Combinators2025-02-07
Notes on PL 14 - Lambda Calculus Encodings2025-01-31
Notes on PL 13 - Lambda Calculus Continued2025-01-24
Notes on PL 12 - Lambda Calculus2025-01-17
标签
CMake 杂项 数据结构与算法 计算机组成原理 Linux 深度学习 大数据 Programming Language 机器学习系统 操作系统 诗词 机器学习 计算机网路 LLDB 这就是生活 软件工程 编译原理 spring c++ LeetCode 高等数学 组合数学 java LLVM 软件开发 剑指Offer Hadoop 自然语言处理 AcWing算法基础
网站资讯
文章数目 :
129
本站总字数 :
191.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
访客地图
©2019 - 2025 By Thomas
搜索
数据库加载中