当前位置: 首页 > news >正文

线性代数基础-行列式

一、行列式之前的概念

1.全排列:

把n个不同的元素排成一列,称为n个元素的全排列,简称排列

(实际上就是我们所说的排列组合符号是Aarrange

2.标准序列:

前一项均小于后一项的序列就是标准序列

比如 1,3,6,7,9就是标准序列

3.逆序数:

序列中满足前一项大于后一项的数对个数

比如有一个序列:{1,6,9,2,3,4}
遍历该序列,看每个数之前有几个数比它大,加和就是逆序数的值

4.奇偶排列

排列的奇偶性与逆序数的奇偶性相同

5.对换

将序列里任意两个元素交换,这个过程叫对换

对换相邻元素的,称为“相邻对换”

经过任一次对换,排列的奇偶性改变

奇排列变成标准序列的对换次数是奇数,偶排列变成标准序列的对换次数是偶数

二、N阶行列式的展开

∣ a b c d ∣ = a d − b c \begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad-bc acbd =adbc

有n行n列的这样的式子是n阶行列式,上图为二阶行列式

∣ a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ∣ = ( a 11 ∗ a 22 ∗ a 33 ) − ( a 11 ∗ a 23 ∗ a 32 ) + ( a 12 ∗ a 23 ∗ a 31 ) − ( a 12 ∗ a 21 ∗ a 32 ) + ( a 13 ∗ a 21 ∗ a 32 ) − ( a 13 ∗ a 22 ∗ a 31 ) \begin{vmatrix} a11 & a12&a13 \\ a21 & a22&a23\\ a31&a32&a33 \end{vmatrix} = (a11*a22*a33)-(a11*a23*a32)+(a12*a23*a31)-(a12*a21*a32)+(a13*a21*a32)-(a13*a22*a31) a11a21a31a12a22a32a13a23a33 =(a11a22a33)(a11a23a32)+(a12a23a31)(a12a21a32)+(a13a21a32)(a13a22a31)

而行列式的值应按照以下规则计算
按**序列奇偶性(见上文)**决定符号,并逐行把数字相乘:
在这里插入图片描述
我们可以把矩阵理解为一个值,甚至常数,所以它满足我们学过的一切乘法,加法性质

三、三角行列式

主对角线:左上到右下
上三角行列式的主对角线下方都是0,行列式值等于主对角线乘积
注意:左下到右上不是主对角线

1.三角行列式

上三角行列式
∣ 1 2 3 0 1 2 0 0 2 ∣ = 1 ∗ 1 ∗ 2 \begin{vmatrix} 1 & 2 &3\\ 0 & 1&2\\ 0&0&2 \end{vmatrix} = 1 * 1 *2 100210322 =112
下三角行列式
∣ 1 0 0 4 1 0 3 1 2 ∣ = 1 ∗ 1 ∗ 2 \begin{vmatrix} 1 & 0 &0\\ 4 & 1&0\\ 3&1&2 \end{vmatrix} = 1 * 1 *2 143011002 =112
对角行列式
∣ 1 0 0 0 1 0 0 0 2 ∣ = 1 ∗ 1 ∗ 2 \begin{vmatrix} 1 & 0 &0\\ 0 & 1&0\\ 0&0&2 \end{vmatrix} = 1 * 1 *2 100010002 =112

四、行列式的性质

1.转置

对每一列,从上到下书写到行上,行列式的值不变
D = ∣ a b c d e f g h i ∣ = D T = ∣ a d g b e h c f i ∣ D = \begin{vmatrix} a & b &c\\ d & e&f\\ g&h&i \end{vmatrix} =D^T= \begin{vmatrix} a & d &g\\ b & e&h\\ c&f&i \end{vmatrix} D= adgbehcfi =DT= abcdefghi

2.交换

我们可以交换行列式的任意两行或者两列,但是会导致值变为相反数
推论1:若行列式D交换一次后,仍等于D,则D=0
推论2:若行列式有两行(列)相等,则行列式为0(交换后D=-D)
∣ a b c d e f g h i ∣ = ( − 1 ) ∗ ∣ a b c g h i d e f ∣ \begin{vmatrix} a & b &c\\ d & e&f\\ g&h&i \end{vmatrix} = (-1)* \begin{vmatrix} a & b &c\\ g & h&i\\ d & e&f \end{vmatrix} adgbehcfi =(1) agdbhecif

3.提取

我们可以把任意一个行或者一列的系数提取到行列式之前
推论:若两行(列)成比例,则行列式为0

∣ 2 a 2 b 2 c 2 d 2 e 2 f g h i ∣ = 2 ∗ ∣ 2 a 2 b 2 c d e f g h i ∣ \begin{vmatrix} 2a &2 b &2c\\ 2d & 2e&2f\\ g&h&i \end{vmatrix} =2* \begin{vmatrix} 2a & 2b &2c\\ d & e&f\\ g&h&i \end{vmatrix} 2a2dg2b2eh2c2fi =2 2adg2beh2cfi

4.拆分

∣ a + x b + y c + z d + w ∣ = ∣ a b + y c d + w ∣ + ∣ x b + y z d + w ∣ \begin{vmatrix} a +x& b+y\\ c +z& d+w\\ \end{vmatrix} = \begin{vmatrix} a & b+y\\ c & d+w\\ \end{vmatrix} + \begin{vmatrix} x& b+y\\ z& d+w\\ \end{vmatrix} a+xc+zb+yd+w = acb+yd+w + xzb+yd+w
我们可以把行列式任意行(列)拆分成和的形式,然后转换为行列式的和
但是要注意我们每次只能拆分一行(列),多行(列)拆分是错误的
∣ a + x b + y c + z d + w ∣ = ∣ a b c d ∣ + ∣ x y z w ∣ \cancel{ \begin{vmatrix} a +x& b+y\\ c +z& d+w\\ \end{vmatrix} = \begin{vmatrix} a & b\\ c & d\\ \end{vmatrix} + \begin{vmatrix} x& y\\ z& w\\ \end{vmatrix}} a+xc+zb+yd+w = acbd + xzyw

5.调整

把任意一行(列)乘以k之后可以加到另一行(列)上,行列式不变
通常这样得到三角行列式来快捷计算
∣ a b c d e f g h i ∣ = ∣ a b c d + k ∗ a e + k ∗ b f + k ∗ c g h i ∣ ( k 任取 ) \begin{vmatrix} a & b &c\\ d & e&f\\ g&h&i \end{vmatrix} = \begin{vmatrix} a & b &c\\ d+k *a & e+k*b&f+k*c\\ g&h&i \end{vmatrix} (k任取) adgbehcfi = ad+kagbe+kbhcf+kci (k任取)
例如我们可以轻易把某些行列式调整为三角行列式
∣ 1 1 2 4 3 1 3 2 2 ∣ = ∣ 1 1 2 0 − 1 − 7 0 − 1 − 4 ∣ = ∣ 1 1 2 0 − 1 − 7 0 0 3 ∣ = 1 ∗ ( − 1 ) ∗ 3 = − 3 \begin{vmatrix} 1 & 1 &2\\ 4 & 3&1\\ 3&2&2 \end{vmatrix} = \begin{vmatrix} 1 & 1 &2\\ 0 & -1&-7\\ 0&-1&-4 \end{vmatrix} = \begin{vmatrix} 1 & 1 &2\\ 0 & -1&-7\\ 0&0&3 \end{vmatrix} = 1*(-1)*3 = -3 143132212 = 100111274 = 100110273 =1(1)3=3

五、行列式的余子式和代数余子式

1.余子式

D = ∣ a b c d e f g h i ∣ D =\begin{vmatrix} a & b &c\\ d & e&f\\ g&h&i \end{vmatrix} D= adgbehcfi

M i j 是把 D 划去第 i 行 j 列的 ( n − 1 ) 阶行列式 M_{ij}是把D划去第i行j列的(n-1)阶行列式 Mij是把D划去第ij列的(n1)阶行列式

M 22 = ∣ a b c d e f g h i ∣ = ∣ a c g i ∣ M_{22} = \begin{vmatrix} a & \cancel{b} &c\\ \cancel{d} & \cancel{e} & \cancel{f} \\ g& \cancel{h} &i \end{vmatrix} = \begin{vmatrix} a &c\\ g & i\\ \end{vmatrix} M22= ad gb e h cf i = agci

2.代数余子式

A i j = ( − 1 ) i + j M i j A_{ij} = (-1)^{i+j} M_{ij} Aij=(1)i+jMij

3.按行或按列展开

D n = a i 1 A i 1 + a i 2 A i 2 + . . . + a i n A i n D_{n}=a_{i1}A_{i1}+a_{i2}A_{i2}+...+a_{in}A_{in} Dn=ai1Ai1+ai2Ai2+...+ainAin
这是按行展开,其实就是对某一行遍历,然后划掉当前元素所在行列求代数余子式,然后乘当前位置的值,按列展开同理。

六、特殊行列式

1.和固定型

D n = ∣ a b b . . . b b a b . . . b b b a . . . b . . . . . . . . . . . . . . . . . . . . . . . . . . . b b b . . . b a ∣ = ∣ a + n b a + n b a + n b . . . a + n b b a b . . . b b b a . . . b . . . . . . . . . . . . . . . . . . . . . . . . . . . b b b . . . b a ∣ D_{n} =\begin{vmatrix} a & b &b&...&b\\ b & a&b&...&b\\ b&b&a&...&b\\ ...&...&...&...&...\\ ...&...&...&...&b\\ b&b&...&b&a\\ \end{vmatrix} = \begin{vmatrix} a+nb & a+nb &a+nb&...&a+nb\\ b & a&b&...&b\\ b&b&a&...&b\\ ...&...&...&...&...\\ ...&...&...&...&b\\ b&b&...&b&a\\ \end{vmatrix} Dn= abb......bbab......bbba........................bbbb...ba = a+nbbb......ba+nbab......ba+nbba........................ba+nbbb...ba

= ( a + n b ) ∣ 1 1 1 . . . 1 b a b . . . b b b a . . . b . . . . . . . . . . . . . . . . . . . . . . . . . . . b b b . . . b a ∣ =(a+nb) \begin{vmatrix} 1 & 1 &1&...&1\\ b & a&b&...&b\\ b&b&a&...&b\\ ...&...&...&...&...\\ ...&...&...&...&b\\ b&b&...&b&a\\ \end{vmatrix} =(a+nb) 1bb......b1ab......b1ba........................b1bb...ba
接下来就可以愉快的用第一行把行列式消成三角了
= ( a + n b ) ∣ 1 1 1 . . . 1 0 a − b 0 . . . 0 0 0 a − b . . . 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 0 . . . 0 a − b ∣ = ( a − b ) n − 1 =(a+nb) \begin{vmatrix} 1 & 1 &1&...&1\\ 0 & a-b&0&...&0\\ 0&0&a-b&...&0\\ ...&...&...&...&...\\ ...&...&...&...&0\\ 0&0&...&0&a-b\\ \end{vmatrix} = (a-b)^{n-1} =(a+nb) 100......01ab0......010ab........................0100...0ab =(ab)n1

2.范德蒙德行列式

D n = ∣ x 1 0 x 2 0 x 3 0 . . . x n 0 x 1 1 x 2 1 x 3 1 . . . x n 1 x 1 2 x 2 2 x 3 2 . . . x n 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . x n n − 1 x 1 n x 2 n x 3 n . . . x n n ∣ = ∣ 1 1 1 . . . 1 x 1 1 x 2 1 x 3 1 . . . x n 1 x 1 2 x 2 2 x 3 2 . . . x n 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . x n n − 1 x 1 n x 2 n x 3 n . . . x n n ∣ D_{n} = \begin{vmatrix} x_1^0 & x_2^0 &x_3^0&...&x_n^0\\ x_1^1 & x_2^1 &x_3^1&...&x_n^1\\ x_1^2 & x_2^2 &x_3^2&...&x_n^2\\ ...&...&...&...&...\\ ...&...&...&...&x_n^{n-1}\\ x_1^n & x_2^n&x_3^n&...&x_n^n\\ \end{vmatrix}=\begin{vmatrix} 1 & 1 &1&...&1\\ x_1^1 & x_2^1 &x_3^1&...&x_n^1\\ x_1^2 & x_2^2 &x_3^2&...&x_n^2\\ ...&...&...&...&...\\ ...&...&...&...&x_n^{n-1}\\ x_1^n & x_2^n&x_3^n&...&x_n^n\\ \end{vmatrix} Dn= x10x11x12......x1nx20x21x22......x2nx30x31x32......x3n..................xn0xn1xn2...xnn1xnn = 1x11x12......x1n1x21x22......x2n1x31x32......x3n..................1xn1xn2...xnn1xnn

这样的行列式称为“范德蒙德行列式”
一般按照以下规则计算

D n = ∏ 1 < = i < j < = n ( x j − x i ) = − − − − − − − − − − − − − − − − − − − − − − − − − − − − ( x n − x n − 1 ) ( x n − x n − 2 ) . . . ( x n − x 1 ) ( x n − 1 − x n − 2 ) ( x n − 1 − x n − 3 ) . . . ( x n − 1 − x 1 ) . . . ( x 3 − x 2 ) ( x 3 − x 1 ) ( x 2 − x 1 ) D_n = \prod_{1<=i<j<=n}{(x_j-x_i)} = \\ ----------------------------\\ (x_n-x_{n-1})(x_n-x_{n-2})...(x_n-x_{1})\\(x_{n-1}-x_{n-2})(x_{n-1}-x_{n-3})...(x_{n-1}-x_{1})\\ ...\\ (x_{3}-x_{2})(x_{3}-x_{1})\\ (x_{2}-x_{1}) Dn=1<=i<j<=n(xjxi)=(xnxn1)(xnxn2)...(xnx1)(xn1xn2)(xn1xn3)...(xn1x1)...(x3x2)(x3x1)(x2x1)

证明过程如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、克莱姆法则(Cramer’s Rule)

{ a 11 x 1 + a 12 x 2 + a 13 x 3 + . . . + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + a 23 x 3 + . . . + a 2 n x n = b 2 . . . a n 1 x 1 + a n 2 x 2 + a n 3 x 3 + . . . + a n n x n = b n \begin{cases} a_{11}x_1 + a_{12}x_2+a_{13}x_3 +... +a_{1n}x_n= b_1 \\ a_{21}x_1 + a_{22}x_2+a_{23}x_3 +... +a_{2n}x_n= b_2 \\ ...\\ a_{n1}x_1 + a_{n2}x_2+a_{n3}x_3 +... +a_{nn}x_n= b_n \end{cases} a11x1+a12x2+a13x3+...+a1nxn=b1a21x1+a22x2+a23x3+...+a2nxn=b2...an1x1+an2x2+an3x3+...+annxn=bn
对于这样一个方程组,我们定义一个行列式,只存它的系数,称为”系数行列式
D n = ∣ a 11 a 12 a 13 . . . a 1 n a 21 a 22 a 23 . . . a 2 n a 31 a 32 a 33 . . . a 3 n . . . . . . . . . . . . . . . . . . . . . . . . . . . a ( n − 1 ) n a n 1 a n 2 . . . a n ( n − 1 ) a n n ∣ D_{n} =\begin{vmatrix} a_{11} & a_{12} &a_{13}&...&a_{1n}\\ a_{21} & a_{22}&a_{23}&...&a_{2n}\\ a_{31}&a_{32}&a_{33}&...&a_{3n}\\ ...&...&...&...&...\\ ...&...&...&...&a_{(n-1)n}\\ a_{n1}&a_{n2}&...&a_{n(n-1)}&a_{nn}\\ \end{vmatrix} Dn= a11a21a31......an1a12a22a32......an2a13a23a33........................an(n1)a1na2na3n...a(n1)nann

应用:克莱姆法则判断具有N个方程、N个未知数的线性方程组的解:

  • 当方程组的系数行列式不等于零时,方程组且具有唯一解;
  • 如果方程组无解或者有两个不同的解,方程组的系数行列式等于零
  • 克莱姆法则不仅仅适用于实数域,它在任何域上面都成立。

克莱姆法则的局限性:

  • 方程个数与未知数的个数不同时,系数的行列式等于零时,克莱姆法则失效。
  • 运算量较大,求解一个N阶线性方程组要计算N+1个N阶行列式

相关文章:

线性代数基础-行列式

一、行列式之前的概念 1.全排列&#xff1a; 把n个不同的元素排成一列&#xff0c;称为n个元素的全排列&#xff0c;简称排列 &#xff08;实际上就是我们所说的排列组合&#xff0c;符号是A&#xff0c;arrange&#xff09; 2.标准序列&#xff1a; 前一项均小于后一项的序列…...

RT-Thread(学习)

RT-Thread是一款完全由国内团队开发维护的嵌入式实时操作系统&#xff08;RTOS&#xff09;&#xff0c;具有完全的自主知识产权。经过16个年头的沉淀&#xff0c;伴随着物联网的兴起&#xff0c;它正演变成一个功能强大、组件丰富的物联网操作系统。 RT-Thread概述 RT-Threa…...

【MySQL】 MySQL 死锁问题分析优化器特性及优化方案

MySQL 死锁问题分析优化器特性及解决方案 MySQL 锁机制介绍 1、MySQL常用存储引擎的锁机制 MyISAM和MEMORY采用表级锁(table-level locking) BDB采用页面锁(page-level locking)或表级锁&#xff0c;默认为页面锁 InnoDB支持行级锁(row-level locking)和表级锁,默认为行级…...

【C++面向对象侯捷】8.栈,堆和内存管理

文章目录 栈&#xff0c;堆stack object的生命周期static local object的生命周期global object的生命周期heap objects 的生命期new&#xff1a;先分配memory&#xff0c;再调用构造函数delete: 先调用析构函数&#xff0c;再释放 memory动态分配所得的内存块&#xff0c;in V…...

在比特币上使用可检索性证明支付存储费用

我们为用户开发了一种为云存储付费的新方法。 与亚马逊的 S3 等传统云存储相比&#xff0c;用户不必信任服务器。 我们使用比特币智能合约来确保支付取决于服务器的可检索性证明 (PoR)&#xff0c;该证明只能在数据仍然可用且需要时可以检索的情况下生成。 可检索性证明 (PoR)…...

使用SSE(Server-Sent Events)实现服务端给客户端发消息

首先是客户端&#xff0c;看着比较简单。但实际应用中可能要比这复杂&#xff0c;因为默认sse只支持get请求&#xff0c;而且没法携带header。所以如果默认的方法达不到需求的话可能需要额外实现&#xff0c;当然也可以引用第三方库&#xff0c;比如rangermauve/fetch-event-so…...

【Redis】使用rpm包安装redis

背景说明 公司环境处于内网&#xff0c;某同事需要安装redis&#xff0c;如果使用通过源码编译安装redis&#xff0c;很多编译工具如gcc就需要先安装&#xff0c;但处于内网安装起来不太方便&#xff0c;当然也不是不可以。我们此处就选用通过redis的rpm包进行安装。 rpm包查…...

论文阅读-Group-based Fraud Detection Network on e-Commerce Platforms

目录 摘要 1 Introduction 2 BACKGROUND AND RELATED WORK 2.1 Preliminaries 2.2 Related Works 3 MODEL 3.1 Structural Feature Initialization 3.2 Fraudster Community Detection 3.3 Training Objective 4 EXPERIMENT 4.1 Experimental Setup 4.2 Prediction …...

java程序启动时指定JVM内存参数和Xms、Xmx参数学习

先找个java程序来试验&#xff1b;找这个&#xff0c; java实现计算机图形学中点画线算法_java 多个点连成一条线 算法-CSDN博客 JVM内存参数中&#xff0c; -Xms&#xff1a;设置堆内存的初始大小&#xff0c;默认为物理内存的1/64&#xff1b; -Xmx&#xff1a;设置堆内存的…...

【C++编程能力提升】

代码随想录训练营Day44 | Leetcode 518、377 一、完全背包问题1、完全背包与01背包的区别 二、518 零钱兑换II三、377 组合总和IV 一、完全背包问题 1、完全背包与01背包的区别 第一&#xff0c;物品的有限与无限&#xff1b; 01背包&#xff1a;物品是有限的。&#xff08;每…...

FlashDuty Changelog 2023-09-21 | 自定义字段和开发者中心

FlashDuty&#xff1a;一站式告警响应平台&#xff0c;前往此地址免费体验&#xff01; 自定义字段 FlashDuty 已支持接入大部分常见的告警系统&#xff0c;我们将推送内容中的大部分信息放到了 Lables 进行展示。尽管如此&#xff0c;我们用户还是会有一些扩展或定制性的需求…...

贪心算法-

代码随想录 什么是贪心 贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优。 这么说有点抽象&#xff0c;来举一个例子&#xff1a; 例如&#xff0c;有一堆钞票&#xff0c;你可以拿走十张&#xff0c;如果想达到最大的金额&#xff0c;你要怎么拿&#xff…...

漫谈:C语言 C++ 左值、右值、类型转换

编程不是自然语言&#xff0c;编程自有其内在逻辑。 左值引起的BUG 编译器经常给出类似这样的BUG提示&#xff1a; “表达式必须是可修改的左值” “非常量引用的初始值必须是左值” 看一下示例&#xff1a; #include <iostream>void f(int& x) {} int main() {sho…...

前车之鉴,后车之师

问题分类具体解释可能导致的后果解决方法备注主从延迟数据库写后立即读的场景&#xff0c;比如订单落地成功抛消息&#xff0c;消息接收方再读订单推订单中心、发触达、落地数据等场景&#xff0c;再读数据时走从库&#xff0c;可能读不到数据。脏数据业务逻辑有问题延迟消费。…...

WEB使用VUE3实现地图导航跳转

我们在用手机查看网页时可以通过传入经纬度去设置目的地然后跳转到对应的地图导航软件&#xff0c;如果没有下载软件则会跳转到下载界面 注意&#xff1a; 高德地图是一定会跳转到一个新网页然后去询问用户是否需要打开软件百度和腾讯地图是直接调用软件的这个方法有缺陷&…...

今天聊一聊高性能系统架构设计是什么样的

Java全能学习面试指南&#xff1a;https://javaxiaobear.cn 今天聊一聊大家常听到的高性能系统架构。 高性能系统架构&#xff0c;主要包括两部分内容&#xff0c;性能测试与性能优化。性能优化又可以细分为硬件优化、中间件优化、架构优化及代码优化&#xff0c;知识架构图如…...

鼠标不动了怎么办?3招解决问题!

“这是怎么回事呢&#xff1f;我的鼠标怎么会用着用着就突然不动了呢&#xff1f;现在有一些比较重要的工作要处理。请问有什么方法可以快速解决这个问题吗&#xff1f;” 随着电脑在我们日常生活和工作中的广泛应用&#xff0c;鼠标是我们操作电脑不可或缺的工具之一。但是&am…...

2023-09-23力扣每日一题

链接&#xff1a; 1993. 树上的操作 题意 **Lock&#xff1a;**指定用户给指定节点 上锁 &#xff0c;上锁后其他用户将无法给同一节点上锁。只有当节点处于未上锁的状态下&#xff0c;才能进行上锁操作。**Unlock&#xff1a;**指定用户给指定节点 解锁 &#xff0c;只有当…...

C#中使用Newtonsoft.Charp实现Json对象序列化与反序列化

场景 C#中使用Newtonsoft.Json实现对Json字符串的解析&#xff1a; C#中使用Newtonsoft.Json实现对Json字符串的解析_霸道流氓气质的博客-CSDN博客 上面讲的对JSON字符串进行解析&#xff0c;实际就是JSON对象的反序列化。 在与第三方进行交互时常需要封装对象&#xff0c;…...

Golang开发--互斥锁和读写锁

互斥锁&#xff08;Mutex&#xff09; 互斥锁&#xff08;Mutex&#xff09;是一种并发控制机制&#xff0c;用于保护共享资源的访问。互斥锁用于确保在任何给定时间只有一个 goroutine&#xff08;Go 语言中的并发执行单元&#xff09;可以访问被保护的共享资源&#xff0c;从…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...

Qemu arm操作系统开发环境

使用qemu虚拟arm硬件比较合适。 步骤如下&#xff1a; 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载&#xff0c;下载地址&#xff1a;https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...

Visual Studio Code 扩展

Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后&#xff0c;命令 changeCase.commands 可预览转换效果 EmmyLua…...

Linux 下 DMA 内存映射浅析

序 系统 I/O 设备驱动程序通常调用其特定子系统的接口为 DMA 分配内存&#xff0c;但最终会调到 DMA 子系统的dma_alloc_coherent()/dma_alloc_attrs() 等接口。 关于 dma_alloc_coherent 接口详细的代码讲解、调用流程&#xff0c;可以参考这篇文章&#xff0c;我觉得写的非常…...

LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》

&#x1f9e0; LangChain 中 TextSplitter 的使用详解&#xff1a;从基础到进阶&#xff08;附代码&#xff09; 一、前言 在处理大规模文本数据时&#xff0c;特别是在构建知识库或进行大模型训练与推理时&#xff0c;文本切分&#xff08;Text Splitting&#xff09; 是一个…...

java高级——高阶函数、如何定义一个函数式接口类似stream流的filter

java高级——高阶函数、stream流 前情提要文章介绍一、函数伊始1.1 合格的函数1.2 有形的函数2. 函数对象2.1 函数对象——行为参数化2.2 函数对象——延迟执行 二、 函数编程语法1. 函数对象表现形式1.1 Lambda表达式1.2 方法引用&#xff08;Math::max&#xff09; 2 函数接口…...