中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站編程外貿(mào)業(yè)務(wù)推廣

網(wǎng)站編程,外貿(mào)業(yè)務(wù)推廣,想做外貿(mào)做哪些網(wǎng)站好,wordpress文404線性代數(shù)算法 一、向量的加減乘除1. 向量加法2. 向量減法3. 向量數(shù)乘4. 向量點(diǎn)積5. 向量叉積 二、矩陣的加減乘除1. 矩陣加法2. 矩陣減法3. 矩陣數(shù)乘4. 矩陣乘法 常用數(shù)學(xué)庫 線性代數(shù)是數(shù)學(xué)的一個(gè)分支,用于研究線性方程組及其解的性質(zhì)、向量空間及其變換的性質(zhì)等。在…

線性代數(shù)算法

  • 一、向量的加減乘除
    • 1. 向量加法
    • 2. 向量減法
    • 3. 向量數(shù)乘
    • 4. 向量點(diǎn)積
    • 5. 向量叉積
  • 二、矩陣的加減乘除
    • 1. 矩陣加法
    • 2. 矩陣減法
    • 3. 矩陣數(shù)乘
    • 4. 矩陣乘法
  • 常用數(shù)學(xué)庫

線性代數(shù)是數(shù)學(xué)的一個(gè)分支,用于研究線性方程組及其解的性質(zhì)、向量空間及其變換的性質(zhì)等。在計(jì)算機(jī)科學(xué)領(lǐng)域中,線性代數(shù)常用于圖形學(xué)、機(jī)器學(xué)習(xí)、計(jì)算機(jī)視覺等領(lǐng)域。本文將詳細(xì)介紹 JS 中常用的線性代數(shù)算法,并提供代碼示例。

一、向量的加減乘除

向量是有大小和方向的量,通常用一列數(shù)表示。向量的加減乘除運(yùn)算也是線性代數(shù)中的基本運(yùn)算。

1. 向量加法

向量加法計(jì)算兩個(gè)向量相加的結(jié)果。

例如:給定兩個(gè)二維向量:

a ? = [ 1 2 ] , b ? = [ 3 4 ] \vec{a}=\begin{bmatrix} 1 \\ 2 \end{bmatrix},\vec=\begin{bmatrix} 3 \\ 4 \end{bmatrix} a =[12?],b =[34?]

則它們的和為:

a ? + b ? = [ 4 6 ] \vec{a}+\vec=\begin{bmatrix} 4 \\ 6 \end{bmatrix} a +b =[46?]

代碼實(shí)現(xiàn):

function addVectors(a, b) {if (a.length !== b.length) return null;return a.map((n, i) => n + b[i]);
}

2. 向量減法

向量減法計(jì)算兩個(gè)向量相減的結(jié)果。

例如:給定兩個(gè)三維向量:

a ? = [ 1 3 2 ] , b ? = [ 4 1 5 ] \vec{a}=\begin{bmatrix} 1 \\ 3 \\ 2 \end{bmatrix},\vec=\begin{bmatrix} 4 \\ 1 \\ 5 \end{bmatrix} a = ?132? ?,b = ?415? ?

則它們的差為:

a ? ? b ? = [ ? 3 2 ? 3 ] \vec{a}-\vec=\begin{bmatrix} -3 \\ 2 \\ -3 \end{bmatrix} a ?b = ??32?3? ?

代碼實(shí)現(xiàn):

function subtractVectors(a, b) {if (a.length !== b.length) return null;return a.map((n, i) => n - b[i]);
}

3. 向量數(shù)乘

向量數(shù)乘是將一個(gè)向量的每個(gè)元素乘以一個(gè)標(biāo)量。

例如:給定一個(gè)三維向量:

a ? = [ 1 3 2 ] \vec{a}=\begin{bmatrix} 1 \\ 3 \\ 2 \end{bmatrix} a = ?132? ?

則它乘以標(biāo)量 k = 2 k=2 k=2 的結(jié)果為:

k a ? = 2 [ 1 3 2 ] = [ 2 6 4 ] k \vec{a}=2\begin{bmatrix} 1 \\ 3 \\ 2 \end{bmatrix}=\begin{bmatrix} 2 \\ 6 \\ 4 \end{bmatrix} ka =2 ?132? ?= ?264? ?

代碼實(shí)現(xiàn):

function scalarMultiply(vector, scalar) {return vector.map(n => n * scalar);
}

4. 向量點(diǎn)積

向量點(diǎn)積(也稱為內(nèi)積或數(shù)量積)計(jì)算兩個(gè)向量的乘積的和。

例如:給定兩個(gè)三維向量:

a ? = [ 1 3 2 ] , b ? = [ 4 1 5 ] \vec{a}=\begin{bmatrix} 1 \\ 3 \\ 2 \end{bmatrix},\vec=\begin{bmatrix} 4 \\ 1 \\ 5 \end{bmatrix} a = ?132? ?,b = ?415? ?

則它們的點(diǎn)積為:

a ? ? b ? = 1 × 4 + 3 × 1 + 2 × 5 = 17 \vec{a} \cdot \vec=1 \times 4 + 3 \times 1 + 2 \times 5 = 17 a ?b =1×4+3×1+2×5=17

代碼實(shí)現(xiàn):

function dotProduct(a, b) {if (a.length !== b.length) return null;return a.reduce((sum, n, i) => sum + n * b[i], 0);
}

5. 向量叉積

向量叉積(也稱為外積或向量積)計(jì)算兩個(gè)向量的垂直于它們所在平面的法向量。向量叉積只適用于三維向量。

例如:給定兩個(gè)三維向量:

a ? = [ 1 3 2 ] , b ? = [ 4 1 5 ] \vec{a}=\begin{bmatrix} 1 \\ 3 \\ 2 \end{bmatrix},\vec=\begin{bmatrix} 4 \\ 1 \\ 5 \end{bmatrix} a = ?132? ?,b = ?415? ?

則它們的叉積為:

a ? × b ? = [ 13 3 ? 11 ] \vec{a} \times \vec=\begin{bmatrix} 13 \\ 3 \\ -11 \end{bmatrix} a ×b = ?133?11? ?

代碼實(shí)現(xiàn):

function crossProduct(a, b) {if (a.length !== 3 || b.length !== 3) return null;const [ax, ay, az] = a;const [bx, by, bz] = b;return [ay * bz - az * by, az * bx - ax * bz, ax * by - ay * bx];
}

二、矩陣的加減乘除

矩陣是由若干行若干列的數(shù)排成的矩形陣列,通常用兩個(gè)下標(biāo)表示。矩陣的加減乘除運(yùn)算也是線性代數(shù)中的基本運(yùn)算。

1. 矩陣加法

矩陣加法計(jì)算兩個(gè)矩陣相加的結(jié)果。

例如:給定兩個(gè) 2 × 2 2 \times 2 2×2 的矩陣:

[ 1 2 3 4 ] , [ 5 6 7 8 ] \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} , \begin{bmatrix} 5 & 6 \\ 7 & 8 \end{bmatrix} [13?24?],[57?68?]

則它們的和為:

[ 6 8 10 12 ] \begin{bmatrix} 6 & 8 \\ 10 & 12 \end{bmatrix} [610?812?]

代碼實(shí)現(xiàn):

function addMatrices(a, b) {if (a.length !== b.length || a[0].length !== b[0].length) return null;return a.map((row, i) => row.map((n, j) => n + b[i][j]));
}

2. 矩陣減法

矩陣減法計(jì)算兩個(gè)矩陣相減的結(jié)果。

例如:給定兩個(gè) 3 × 3 3 \times 3 3×3 的矩陣:

[ 1 3 2 4 8 5 6 1 2 ] , [ 2 1 5 3 6 4 1 7 3 ] \begin{bmatrix} 1 & 3 & 2 \\ 4 & 8 & 5 \\ 6 & 1 & 2 \end{bmatrix} , \begin{bmatrix} 2 & 1 & 5 \\ 3 & 6 & 4 \\ 1 & 7 & 3 \end{bmatrix} ?146?381?252? ?, ?231?167?543? ?

則它們的差為:

[ ? 1 2 ? 3 1 2 1 5 ? 6 ? 1 ] \begin{bmatrix} -1 & 2 & -3 \\ 1 & 2 & 1 \\ 5 & -6 & -1 \end{bmatrix} ??115?22?6??31?1? ?

代碼實(shí)現(xiàn):

function subtractMatrices(a, b) {if (a.length !== b.length || a[0].length !== b[0].length) return null;return a.map((row, i) => row.map((n, j) => n - b[i][j]));
}

3. 矩陣數(shù)乘

矩陣數(shù)乘是將一個(gè)矩陣的每個(gè)元素乘以一個(gè)標(biāo)量。

例如:給定一個(gè) 2 × 2 2 \times 2 2×2 的矩陣:

[ 1 3 2 5 ] \begin{bmatrix} 1 & 3 \\ 2 & 5 \end{bmatrix} [12?35?]

則它乘以標(biāo)量 k = 2 k=2 k=2 的結(jié)果為:

2 × [ 1 3 2 5 ] = [ 2 6 4 10 ] 2 \times \begin{bmatrix} 1 & 3 \\ 2 & 5 \end{bmatrix}=\begin{bmatrix} 2 & 6 \\ 4 & 10 \end{bmatrix} 2×[12?35?]=[24?610?]

代碼實(shí)現(xiàn):

function scalarMultiplyMatrix(matrix, scalar) {return matrix.map(row => row.map(n => n * scalar));
}

4. 矩陣乘法

矩陣乘法計(jì)算兩個(gè)矩陣相乘的結(jié)果。矩陣乘法滿足結(jié)合律,但不滿足交換律。即 A × B ≠ B × A A \times B \neq B \times A A×B=B×A。

例如:給定兩個(gè) 2 × 3 2 \times 3 2×3 3 × 2 3 \times 2 3×2 的矩陣:

[ 1 2 3 4 5 6 ] , [ 7 8 9 10 11 12 ] \begin{bmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \end{bmatrix} , \begin{bmatrix} 7 & 8 \\ 9 & 10 \\ 11 & 12\end{bmatrix} [14?25?36?], ?7911?81012? ?
以下是兩個(gè) 2×3 和 3×2 矩陣的乘法的 JavaScript 代碼示例:

// 2x3 矩陣
const matrixA = [[1, 2, 3],[4, 5, 6]
];// 3x2 矩陣
const matrixB = [[7, 8],[9, 10],[11, 12]
];// 2x2 結(jié)果矩陣
const resultMatrix = [[0, 0],[0, 0]
];// 矩陣乘法
for (let i = 0; i < 2; i++) {for (let j = 0; j < 2; j++) {let sum = 0;for (let k = 0; k < 3; k++) {sum += matrixA[i][k] * matrixB[k][j];}resultMatrix[i][j] = sum;}
}// 輸出結(jié)果
console.log(resultMatrix);

輸出結(jié)果為:

[[58, 64],[139, 154]
]

上述代碼中,我們首先定義了兩個(gè)矩陣 matrixAmatrixB,然后定義了一個(gè)結(jié)果矩陣 resultMatrix,該矩陣的大小為 2×2。

接下來,我們通過三層循環(huán)實(shí)現(xiàn)了矩陣乘法。外層兩個(gè)循環(huán)控制結(jié)果矩陣的行列數(shù),內(nèi)層循環(huán)計(jì)算結(jié)果矩陣中每個(gè)元素的值。

最后,我們輸出了結(jié)果矩陣的值。

常用數(shù)學(xué)庫

在 JavaScript 中實(shí)現(xiàn)線性代數(shù)算法需要使用數(shù)學(xué)庫,比如 Math.js 或者 NumJS。

以下是 Math.js 的示例代碼:

// 創(chuàng)建矩陣
const matrix1 = math.matrix([[1, 2], [3, 4]]);
const matrix2 = math.matrix([[5, 6], [7, 8]]);// 加法
const addResult = math.add(matrix1, matrix2);
console.log(addResult); // 輸出 [[6, 8], [10, 12]]// 矩陣乘法
const multiplyResult = math.multiply(matrix1, matrix2);
console.log(multiplyResult); // 輸出 [[19, 22], [43, 50]]// 轉(zhuǎn)置
const transposeResult = math.transpose(matrix1);
console.log(transposeResult); // 輸出 [[1, 3], [2, 4]]// 求逆矩陣
const inverseResult = math.inv(matrix1);
console.log(inverseResult); // 輸出 [[-2, 1], [1.5, -0.5]]

以上是一些常見的線性代數(shù)算法的示例代碼。使用數(shù)學(xué)庫可以方便地實(shí)現(xiàn)復(fù)雜的線性代數(shù)計(jì)算。

http://www.risenshineclean.com/news/27776.html

相關(guān)文章:

  • 廣東裝飾公司網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷師證書含金量
  • 中山企業(yè)門戶網(wǎng)站建設(shè)成都網(wǎng)站關(guān)鍵詞推廣
  • 長沙需要做網(wǎng)站的企業(yè)吳忠seo
  • 動(dòng)態(tài)網(wǎng)站開發(fā)第一步藥品銷售推廣方案
  • 中國幼兒在線幼兒園網(wǎng)站建設(shè)天津網(wǎng)站建設(shè)
  • sae 網(wǎng)站模板線上營銷平臺有哪些
  • 政府網(wǎng)站建設(shè)什么網(wǎng)站可以免費(fèi)推廣
  • wordpress 首頁模板河南靠譜seo地址
  • 北京中關(guān)村在線官網(wǎng)站群seo
  • 長沙簡單的網(wǎng)站建設(shè)公司威海百度seo
  • 翡翠原石網(wǎng)站首頁怎么做怎樣做app推廣
  • 網(wǎng)站手機(jī)端 怎么做阿里指數(shù)官方網(wǎng)站
  • 在局網(wǎng)站 作風(fēng)建設(shè)百度電話怎么轉(zhuǎn)人工
  • 網(wǎng)站備案當(dāng)面核驗(yàn)中國搜索引擎市場份額
  • 汕頭網(wǎng)站推廣教程2345瀏覽器網(wǎng)址導(dǎo)航
  • 怎么做淘寶客網(wǎng)站賺錢整站優(yōu)化加盟
  • 做英文網(wǎng)站哪家好關(guān)鍵詞首頁排名優(yōu)化價(jià)格
  • 大寺網(wǎng)站建設(shè)公司不限次數(shù)觀看視頻的app
  • 網(wǎng)站備案填寫昆山網(wǎng)站制作公司
  • 可以做早安圖片的網(wǎng)站一鍵優(yōu)化大師下載
  • domain:網(wǎng)站建設(shè)網(wǎng)站建設(shè)的系統(tǒng)流程圖
  • 有了網(wǎng)站 怎么做排名優(yōu)化新聞?lì)^條最新消息今日頭條
  • 企業(yè)網(wǎng)盤怎么申請seo搜索優(yōu)化 指數(shù)
  • 兼職做設(shè)計(jì)什么網(wǎng)站好360競價(jià)推廣
  • 建筑工地招聘信息網(wǎng)昆明網(wǎng)站seo公司
  • 網(wǎng)站開發(fā)網(wǎng)絡(luò)課程網(wǎng)絡(luò)營銷的平臺有哪些
  • 電商網(wǎng)站怎么做支付廣州專門做seo的公司
  • 上海做網(wǎng)站要多少錢邵陽seo優(yōu)化
  • 哪些網(wǎng)站做魔獸地圖樂云seo
  • 柳州市網(wǎng)站制作公司網(wǎng)站的seo方案