Wie konvertiert man ein 1d Array in ein 2d Array?

8

Sprich, ich habe ein 1d Array mit 30 Elementen:

%Vor%

Wie konvertiert man das 1d Array in das 2d Array? Sag 10x3?

%Vor%

Soll ich eine for-Schleife verwenden?
Aber ich kann es nicht herausfinden.

    
kafter2 27.02.2011, 17:05
quelle

7 Antworten

14

Ohne irgendeinen Code für dich zu schreiben ...

  • Denken Sie darüber nach, wie groß Ihr 2d-Array sein muss.
  • Erkenne, dass du den Inhalt deines Quell-Arrays durchlaufen musst, um jeden Wert in dein Ziel-Array zu bekommen.

Es wird also ungefähr so ​​aussehen ...

  • Erstellen Sie ein 2D-Array mit der passenden Größe.
  • Verwenden Sie eine for-Schleife, um über Ihr 1d-Array zu schleifen.
  • Innerhalb dieser for-Schleife müssen Sie herausfinden, wo jeder Wert im 1d-Array in das 2d-Array gehen soll. Versuchen Sie, die mod-Funktion gegen Ihre Counter-Variable zu verwenden, um die Indizes des 2d-Arrays zu umschließen.

Ich bin absichtlich vage, da es sich um Hausaufgaben handelt. Versuche etwas Code zu posten, damit wir sehen können, wo du hängenbleibst.

    
epalm 27.02.2011, 17:18
quelle
14
%Vor%     
Bala R 27.02.2011 17:09
quelle
4
%Vor%     
arunn 18.10.2012 14:19
quelle
3

Hier eine generische Funktion zum Konvertieren von 1D - & gt; 2D-Array:

%Vor%

Wenn Sie das Gegenteil (2D - & gt; 1D) tun möchten, hier die Funktion:

%Vor%     
Luca Sepe 30.01.2013 14:09
quelle
1
%Vor%     
Nolesh 08.02.2013 14:18
quelle
1

Sie werden oft das gleiche Problem finden: 2D-Array als 1D-Array zu manipulieren. Ich habe eine generische Klasse "Grid" geschrieben, die auf Objekte mit index oder (x, y) zugreifen kann.

Sehen Sie sich die folgende Klasse an und verstehen Sie die dahinter stehende Idee. :)

Sie können die folgende Klasse zur Datenbearbeitung als 2D-Array oder 1D-Array verwenden. Hier ist der Code, den ich geschrieben und benutzt habe.

%Vor%

So verwenden Sie die Klasse (siehe Testbeispiel):

%Vor%     
Willmore 26.11.2014 13:31
quelle
-2

Sie können ein 1D-Array nicht in ein 2D-Array "konvertieren", aber ein Array kann mehrdimensional sein, wenn Sie es deklarieren.

%Vor%     
krtek 27.02.2011 17:10
quelle