| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> Python Programming >> Content
    Sådan Flet en Sortér i Python
    Sortering datalister er et problem, der har ærgret programmører siden begyndelsen af ​​edb-programmering . Sortering enhver liste af data kan ende som en hukommelse - og tidskrævende opgave. På grund af dette, har forskellige slags metoder er blevet opfundet for at minimere udfordringen og kræfter på sortering. En metode er fusionere sortering . Det opdeler en liste rekursivt ind ental elementer og splejset listen i sorteres formular. Ethvert programmeringssprog , der understøtter rekursion , såsom Python, kan implementere en sammenfletning slags. Ting du skal
    Python Interpreter med Interactive Development Environment
    Vis Flere Instruktioner
    1

    Definer " mergesort "-funktion. Denne grundlæggende funktion kalder sig rekursivt , opdele listen størrelse i halvdelen med hvert opkald. Når mergesort funktionen rammer en liste med et element , rekursionen stopper og elementet afkast. Da de mergesort rekursion afvikler , er hver mindre liste fusioneret sammen i sorteret orden . Dette eksempel viser en grundlæggende mergesort funktion, der tager en liste som et argument : Hej

    >>> def mergesort ( li ) : Hej

    . . . hvis len ( li ) <2 : Hej

    . . . tilbage li

    . . . mid = len ( li ) /2

    . . . først = mergesort ( li [ : mid ] )

    . . . sidste = mergesort ( li [ mid : ] )

    . . . tilbage fusionere ( første, sidste )
    2

    Opsæt sammenfletningen metoden. Denne funktion vil fungere som sortering metode den returnerer en sorteret liste over elementer. Sammenfletningsværktøjet metode tager to allerede sorterede lister . Derefter definerer en intern liste " sorteres ", der vil repræsentere de kombinerede sorteret argument lister. Sammenfletningsværktøjet metoden opnår dette ved at tage det mindste element , og indsætte det i en ny liste " sorteres " . Når en af ​​de lister ender , den anden liste, indsat i sin helhed

    >>> def merge (x, y): .

    . . . sorteres = [ ]
    3

    Flet listerne i sammenfletningen metoden. Den " mens" loop i eksemplet sammenligner hver liste punkt for punkt , idet det mindste element , og indsætte det i en ny liste " sorteres " . Når en af ​​listerne ender , den anden liste, indsat i sin helhed, og den nye sorteret liste returneres : Hej

    . . . i, j = 0 , 0

    . . . mens jeg < len (x) og j < len (y) : Hej

    . . . hvis x [i] < = y [ j] : Hej

    . . . sorted.append (x [i] )

    . . . i + = 1

    . . . ellers : Hej

    . . . sorted.append (y [ j] )

    . . . j + = 1

    . . . sorteres + = x [ I: ]

    . . . sorteres + = y [ : j]

    . . . returnere sorteres

    Forrige :

    næste :
      Relaterede artikler
    ·Hvordan man laver en String Into en URL i Django 
    ·Sådan fjernes alle breve fra en liste i Python 
    ·Sådan Upload til S3 med Python 
    ·Sådan Split hvert bogstav String i Python 
    ·Sådan oprettes et regulært udtryk i Python 
    ·Geoprocessering Med Python 
    ·Sådan Erstat White Space Med Python Regex 
    ·Maya Python Tutorial 
    ·Sådan Gør Python Round Up 
    ·Python Tutorial for Mac 
      Anbefalede Artikler
    ·Den slags Linjer i Visual Basic 
    ·Sådan Split en FLAC fil med Dev -C + + 
    ·C Tutorial : Datatyper 
    ·Sådan Slet Cursor attribut i PL /SQL 
    ·Sådan Konverter kildekoden fra CSharp til vb.Net og Ba…
    ·Sådan oprettes Wave data fra Buffere i VB6 
    ·Sådan Split flere separatorer i JavaScript 
    ·Sådan Bo Kolonner i Underformularer 
    ·Python HTML Tutorial 
    ·Sådan oprettes Graph Breaks i SigmaPlot 
    Copyright © Computer Viden http://www.computerdk.com