Prueba este algoritmo,
La función ToReducedRowEchelonForm (Matrix M) es
plomo : = 0
rowCount : = el número de filas en M
columnCount : = el número de columnas en M
para 0 ≤ r < rowCount do
if columnCount ≤ lead entonces
detener
terminara si
i = r
mientras que M [ i , lead ] = 0 do
i = i + 1
si rowCount = i entonces
i = r
plomo = plomo + 1
if columnCount = lead entonces
detener
terminara si
terminara si
terminar mientras
Intercambiar filas iy r
Si M [ r , plomo ] no es 0, divida la fila r por M [ r , plomo ]
para 0 ≤ i < rowCount do
si lo hago
Resta M [i, plomo] multiplicado por la fila r de la fila i
terminara si
fin para
plomo = plomo + 1
fin para
función final
El código también se proporciona aquí (forma escalonada de fila reducida) pero intente escribirlo una vez usando el algoritmo anterior.
- ¿Cuál es la intuición detrás de tomar dos vectores y hacer un escalar a través de la generalización del producto punto?
- ¿Qué es un vector propio de una matriz de covarianza?
- ¿Cómo se prueba [matemáticas] L (x + y) = L (x) + L (y) \ iff L (cx) = cL (x) [/ matemáticas] cuando L es una función lineal?
- ¿Qué es un espacio dual? ¿Cuál es su utilidad?
- Álgebra lineal: para la inversión de matriz, ¿cuándo debería preferirse la descomposición de LU sobre la inversión usando pseudoinverso (por SVD)?