In dieser Herausforderung erhalten Sie eine quadratische Matrix A
, einen Vektor v
und einen Skalar λ
. Sie müssen feststellen, ob (λ, v)
ein Eigenpaar entspricht A
; das heißt, ob oder nicht Av = λv
.
Skalarprodukt
Das Skalarprodukt zweier Vektoren ist die Summe der elementweisen Multiplikation. Beispielsweise ist das Skalarprodukt der folgenden zwei Vektoren:
(1, 2, 3) * (4, 5, 6) = 1*4 + 2*5 + 3*6 = 32
Beachten Sie, dass das Skalarprodukt nur zwischen zwei Vektoren gleicher Länge definiert wird.
Matrix-Vektor-Multiplikation
Eine Matrix ist ein 2D-Wertegitter. Eine m
x- n
Matrix besteht aus m
Zeilen und n
Spalten. Wir können uns eine m
x- n
Matrix als m
Vektoren der Länge vorstellen n
(wenn wir die Zeilen nehmen).
Die Matrix-Vektor-Multiplikation wird zwischen einer m
x- n
Matrix und einem Größenvektor n
definiert. Wenn wir eine m
x- n
Matrix und einen Größenvektor multiplizieren n
, erhalten wir einen Größenvektor m
. Der i
-te Wert im Ergebnisvektor ist das Skalarprodukt der i
-ten Zeile der Matrix und des Originalvektors.
Beispiel
1 2 3 4 5
Let A = 3 4 5 6 7
5 6 7 8 9
1
3
Let v = 5
7
9
Wenn wir die Matrix und den Vektor multiplizieren Av = x
, erhalten wir Folgendes:
x 1 = A T 1 · v /* AT1 means the first row of A; A1 would be the first column */
= (1,2,3,4,5) · (1,3,5,7,9) = 1 · 1 + 2 · 3 + 3 · 5 + 4 · 7 + 5 * 9 = 1 + 6 + 15 + 28 + 45 = 95
x 2 = A T 2 · v = (3,4,5,6,7) · (1,3,5,7,9) = 3 · 1 + 4 · 3 + 5 · 5 + 6 · 7 + 7 * 9 = 3 + 12 + 25 + 42 + 63 = 145
x 3 = A T 3 * v = (5,6,7,8,9) * (1,3,5,7,9) = 5 * 6 * 1 + 3 + 5 + 7 * 8 * 7 + 9 * 9 = 5 + 18 + 35 + 56 + 81 = 195
Also bekommen wir Av = x = (95, 145, 195)
.
Skalarmultiplikation
Die Multiplikation eines Skalars (einer einzelnen Zahl) und eines Vektors ist einfach eine elementweise Multiplikation. Zum Beispiel 3 * (1, 2, 3) = (3, 6, 9)
. Es ist ziemlich einfach.
Eigenwerte und Eigenvektoren
In Anbetracht der Matrix A
sagen wir, dass dies λ
ein Eigenwert ist, der genau dann entspricht v
und v
ein Eigenvektor ist, der λ
genau dann entspricht, wennAv = λv
. (Wo Av
ist Matrix-Vektor-Multiplikation und λv
ist Skalarmultiplikation).
(λ, v)
ist ein Eigenpaar.
Herausforderungsspezifikationen
Eingang
Die Eingabe besteht aus einer Matrix, einem Vektor und einem Skalar. Diese können in beliebiger Reihenfolge in einem angemessenen Format abgerufen werden.
Ausgabe
Die Ausgabe ist ein wahrer / falscher Wert. genau dann wahr, wenn der Skalar und der Vektor ein Eigenpaar mit der angegebenen Matrix sind.
Regeln
- Es gelten Standardlücken
- Wenn in Ihrer Sprache eine integrierte Funktion zum Überprüfen eines Eigenpaars vorhanden ist, können Sie diese möglicherweise nicht verwenden.
- Sie können davon ausgehen, dass alle Zahlen ganze Zahlen sind
Testfälle
MATRIX VECTOR EIGENVALUE
2 -3 -1 3
1 -2 -1 1 1 -> TRUE
1 -3 0 0
2 -3 -1 1
1 -2 -1 1 -2 -> TRUE
1 -3 0 1
1 6 3 1
0 -2 0 0 4 -> TRUE
3 6 1 1
1 0 -1 2
-1 1 1 1 7 -> FALSE
1 0 0 0
-4 3 1
2 1 2 2 -> TRUE
2 1 2 -> TRUE
Ich werde später einen 4x4 hinzufügen.