Ringspeicher u. Median

Gast #199789
Hallo,

ich muss was programmieren und weiss nicht wie.

ich habe ein Array der Grösse 100. In das Array werden kontiuierlich
Werte abgelegt, sortiert (qsort) und der Median wird berechnet.
D.h. ich muss darauf achten, dass nach der Sortierung die Werte nicht
mehr den eigentlich Index haben, z.B. ist der letzte Wert im
Ringspeicher nicht mehr an der Stelle 100. Das ist auch mein Problem,
ich weiss nicht wie ich mir den wahren Index der Werte merken kann,
denn ich muss ja praktisch die letzten 99 Werte berücksichtigen und den
ältersten Wert rausschmeissen und durch einen neuen ersätzen.

Der Median wird nach jedem neu ankommenden Werte bestimmt, dazu muss
ich das Arry sortieren und der Index ist verfälscht.

Hat jemand eine Idee?
Gast #199790
Hi Thomas,

Speicher und ein Quentchen Zeit wird bei PC-Programmierung und 100
Werten nicht das Thema sein?! Dann leg doch ein zweites array2[100] an.
In das erste array1[100] schreibst Du schön der Reihe nach Deine Werte
und Du weißt immer, wo Dein Index hingehört. Dann kopierst Du:

for(i=0;i<=100;i++) array2[i]=array[i];//Ringspeicher retten

Nun array2 sortieren und den Median berechnen.

Gruß Frank
Gast #199791
Hi Thomas,

Speicher und ein Quentchen Zeit wird bei PC-Programmierung und 100
Werten nicht das Thema sein?! Dann leg doch ein zweites array2[100] an.
In das erste array1[100] schreibst Du schön der Reihe nach Deine Werte
und Du weißt immer, wo Dein Index hingehört. Dann kopierst Du:

for(i=0;i<100;i++) array2[i]=array[i];//Ringspeicher retten

Nun array2 sortieren und den Median berechnen.

Gruß Frank

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.