Gewusst wie: übergeben eines Arrays als Funktions-argument in java?

#include<stdio.h>
void fun(int a[],int n)
{
    int i;
    for(i=0;i<n;i++)       
        printf("%d ",a[i]); 
}

int main()
{
    int arr[]={1,2,3,4,5,6};
    fun(arr+2,3);       
    return 0;
}

Ausgabe: 3 4 5
Das array ab der 3. element übergeben wurde hier zum Spaß() in C.
Wie auch in JAVA, da gibt es keine Zeiger in JAVA?

In Reaktion auf einen Kommentar unten, ich dachte, ich fügen Sie die details von dem, was ich wirklich versuche zu tun, wie es zu lang für den Kommentar-Abschnitt. Ich brauche nur den Zugriff auf einen Abschnitt eines Arrays rekursiv. Eigentlich bin ich versucht zu finden, "median von zwei sortierten arrays durch Vergleich der Mediane der beiden arrays" unter Verwendung des folgenden Algorithmus :
1) Berechne die Mittelpunkte m1 und m2 die Eingabe-arrays ar1[]
und ar2[] bzw..
2) Wenn m1 und m2 beide gleich sind, dann sind wir fertig.
return m1 (oder m2)
3), Falls m1 größer ist als m2, dann ist der median ist in einem
der unterhalb von zwei subarrays.
a) Vom ersten element ar1 m1 (ar1[0...|n/2|])
b) Von m2 auf das Letzte element von ar2 (ar2[|n/2|...n-1])
4) Wenn m2 größer als m1 ist, dann median ist in einem

der unterhalb von zwei subarrays.
a) Von m1 bis Letzte element ar1 (ar1[|n/2|...n-1])
b) Aus dem ersten element von ar2 zu m2 (ar2[0...|n/2|])
5) Wiederholen Sie den obigen Vorgang, bis die Größe der beiden subarrays
wird 2.
6) Wenn die Größe der beiden arrays 2 ist, dann verwenden Sie die folgende Formel zu bekommen
der median angegeben.
Median = (max(ar1[0], ar2[0]) + min(ar1[1], ar2[1]))/2

  • Sie können es nicht, wirklich. Sie könnten fun nehmen offset argument, wenn.
  • Ist Ihre Absicht zu ändern, ein Teilgebiet des ursprünglichen Arrays oder machen Sie eine Marke neues array?
  • Ich brauche nur den Zugriff auf einen Abschnitt eines Arrays rekursiv. Eigentlich war ich versucht zu finden, "median von zwei sortierten arrays durch Vergleich der Mediane der beiden arrays" unter Verwendung des folgenden Algorithmus :
  • Bitte überprüfen Sie die bearbeitete Frage, wie es zu lang zum schreiben hier.
InformationsquelleAutor user3126841 | 2014-06-11
Schreibe einen Kommentar