Mi č venuta un'idea: si potrebbe fare prima la trasposta della matrice, ordinare i vettori in base al valore assoluto del primo elemento e poi rifare la trasposta! Che ne dici?
Mi č venuta un'idea: si potrebbe fare prima la trasposta della matrice, ordinare i vettori in base al valore assoluto del primo elemento e poi rifare la trasposta! Che ne dici?
Allora cambia tutto.Originariamente inviato da dosdosdos
le liste seguenti alla prima devono essere riordinate seguendo gli spostamenti della prima: in pratica le colonne si spostano tutte insieme agli elementi della prima riga.
[[3, -2, -4],
[1, 7, -2],
[5, 8, 9],
[-6, 0, 12]]
ottengo:
[[-2, 3, -4],
[7, 1, -2],
[8, 5, 9],
[0, -6, 12]]
se osservi le colonne vedrai che rimangono invariate!
Ordinando la prima riga gli elementi si portano dietro tutta la colonna![]()
Quello che intendi fare non č un ordinamento vero e proprio (come accade con la prima lista) ma uno spostamento di elementi all'interno della lista indipendentemente dal loro valore.
In questo caso non saprei come fare questo in modo "generico" ma la tua esigenza mi suona un po' strana.
In primo luogo trovo strano il fatto di avere una lista di liste in cui la prima č evidentemente differente dalle altre. Sicuramente questa dovrebbe essere a sč stante.
Rilasciata Python FTP Server library 0.5.1
http://code.google.com/p/pyftpdlib/
We'll be those who'll make the italian folks know how difficult can be defecating in Southern California without having the crap flying all around the house.
lista = [[3, -2, -4], [1, 7, -2], [5, 8, 9], [-6, 0, 12]]
Una volta ottenuta la trasposta di lista
lista_trasposta = [[3, -2, -4], [1, 7, -2], [5, 8, 9], [-6, 0, 12]]
come posso ordinare in base al primo elemento di ogni vettore?