Français
Source/ Codesnippets

Nonrekursives QUICKSORT pour String-Arrays

 

p.specht


Titre de la fenêtre "NONREKURSIVES STRING-QUICKSORT"
Déclarer NumMax&,A$[],Stack1&[],Stack2&[],StackPtr&,HeadPtr&
Déclarer TailPtr&,Pivot$,a&,b&,t$,q&,r&,p&,s&,i&,ms1&,sec!,m&: J0:
Cls:Imprimer "Wieviele Random 8-marque-Cordes? ";:Contribution NumMax&
Randomiser:i&=0:Tandis que i&<NumMax&
A$[i&]=chr$(65+int(@rnd(26)))+chr$(65+int(@rnd(26)))+chr$(65+int(@rnd(26)))+\
chr$(65+int(@rnd(26)))+chr$(65+int(@rnd(26)))+chr$(65+int(@rnd(26)))+\
chr$(65+int(@rnd(26)))+chr$(65+int(@rnd(26)))
'imprimer a$[i&],
Inc i&:Endwhile :ms1&=&GetTickCount:StackPtr&=0:HeadPtr&=0
TailPtr&=NumMax&-1:imprimer :imprimer "Starte Nonrekursives Quicksort...";: J2:

Tandis que HeadPtr&<TailPtr& : Pivot$=A$[(HeadPtr&+TailPtr&)/2]

    a&=HeadPtr& : b&=TailPtr&: J1:

    Tandis que A$[a&]<Pivot$:inc a&:Endwhile

        Tandis que A$[b&]>Pivot$:dec b&:Endwhile

            Si a&<b& : t$=A$[a&] : A$[a&]=A$[b&] : A$[b&]=t$: inc a&: dec b&: Goto "J1"

                EndIf :Si a&=b&:q&=b&-1:r&=a&+1: D'autre :q&=b&:r&=a&:EndIf
                inc StackPtr&:p&=HeadPtr&:s&=TailPtr&

                Si (q&-p&)<(s&-r&):Stack1&[StackPtr&]=r&:Stack2&[StackPtr&]=s&

                    HeadPtr&=p&:TailPtr&=q&:D'autre :Stack1&[StackPtr&]=p&
                    Stack2&[StackPtr&]=q&:HeadPtr&=r&:TailPtr&=s&:EndIf :Endwhile

                    Si StackPtr&>0:HeadPtr&=Stack1&[StackPtr&]:TailPtr&=Stack2&[StackPtr&]

                        dec StackPtr&:Goto "J2":EndIf :sec!=(&GetTickCount-ms1&)/1000:imprimer
                        Imprimer "Kontrollausgabe (chaque " + str$(int(NumMax&/30+1))+". Element):"

                        WhileLoop 0,NumMax&-1,int(1+NumMax&/30):Imprimer A$[&Boucle],:Endwhile :imprimer

                            imprimer:imprimer "Sort-la durée pour "+str$(NumMax&)+" $-Variablen: "+\
                            str$(sec!)+" Sek.":imprimer:imprimer "Taste...":WaitInput :Goto "J0"
 
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
14.04.2021  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

624 Views

Untitledvor 0 min.
Erhard Wirth14.06.2024
ecki30.07.2023
N.Art23.07.2021
Glubbfan19.06.2021
plus...

Themeninformationen

cet Thema hat 1 participant:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie