Ich habe einige Probleme mit meinem 2D-Ruby-Array versucht und mein LOC reduziert sich sehr, wenn ich Array-Slicing mache. Also zum Beispiel
%Vor%Ich möchte wissen, ob es eine Möglichkeit gibt, eine diagonale Scheibe zu bekommen? Sagen wir, ich möchte bei [0,0] beginnen und eine diagonale Scheibe von 3 haben. Dann würde ich Elemente aus [0,0], [1,1], [2,2] bekommen und ich würde ein Array erhalten wie [1,4,7] zum Beispiel oben. Gibt es einen magischen Ein-Zeilen-Ruby-Code, der das erreichen kann? 3.mal {etwas magisches Zeug?}
Ruby-Snippet basiert auf Holen Sie sich alle Diagonalen in einer Matrix / Liste von Listen in Python
Dies ist, um alle Diagonalen zu erhalten. Wie auch immer, die Idee besteht darin, das Array von verschiedenen Seiten aufzufüllen, so dass die Diagonalen in den Zeilen und Spalten ausgerichtet sind:
%Vor%Tags und Links ruby multidimensional-array