ich möchte eine Funktion erstellen, die die Determinante einer Matrix mittels Laplache-Entwicklung berechnet.
Ich kriege es nicht gebacken, die i-te Zeile und j-te Spalte von der Matrix zu streichen.
Ich möchte die Entwicklung nach der 1. Zeile machen.
Meine Funktion kriegt als Input eine nested List: z.B. M=[[1,2,3],[2,3,4],[2,3,3]]
Bisher sieht meine Funktion so aus:
Code: Alles auswählen
def det(M):
Det=0
if n==1:
Det=M[0][0]
if n==2:
Det=M[0][0]*M[1][1]-M[1][0]*M[0][1]
else:
for j in range(n):
factor=pow(-1,1+j)*A[0][j]
minor = #Matrix die durch Streichen entsteht.
Det=det(minor)*factor+Det
return Det
Code: Alles auswählen
for i in range(n):
M.remove(M[i][0])
M.remove(M[0])Ansonsten kenne ich noch das "Slicen" von Listen. z.B. 1. Zeile Streichen wäre M[0:] aber wie kriege ich das 1. Element aus jeder 'Unter'-Liste raus?
