I Python , kan du programmere en funksjon for å fjerne duplikater fra en sekvens ved hjelp av flere metoder , men avhengig av hva slags datatyper en sekvens inneholder , kan en metode være raskere enn en annen , men kan fungerer ikke så ofte . For eksempel kan du programmere en funksjon som bruker en ordliste med en samling av unike nøkler for å sjekke for duplikater raskt, men kan også slutte å fungere. På den annen side kan du også programmere en funksjon som rekursivt sjekker hvert element i en sekvens mot en annen midlertidig sekvens er elementer . Dette fungerer alltid for å fjerne duplikater , men tar mye lengre tid . Instruksjoner
en
Åpne Python shell eller kommandolinje
2
Skriv inn følgende : .
Def removeDuplicatesOne ( mySeq ) :
< p > tempSeq = { }
prøve : en
for x i mySeq : en
tempSeq [ x ] = 1
unntatt Feiltype :
< p > del tempSeq
annet :
retur tempSeq.keys ( )
Husk å rykke riktig for å unngå en syntaksfeil . Dette definerer en funksjon og aksepterer en sekvens som en parameter . Den bruker en ordbok for å sjekke rekkefølgen de er angitt til funksjonen for duplikater og butikker ikke- dupliserte medlemmer i en midlertidig sekvens, deretter returnerer en sortert sekvens
3
Skriv inn følgende : .
def removeDuplicatesTwo ( mySeq ) : en
tempSeq = [ ]
for x i mySeq : en
hvis x ikke i tempSeq :
tempSeq . append ( x )
retur tempSeq
p Dette definerer en funksjon som bruker en tregere algoritme som den forrige, men fungerer oftere også. Det opprettes en midlertidig sekvens , så bare sykluser gjennom hvert element i den eksisterende sekvens og sjekker for å se om det elementet eksisterer i midlertidig . Hvis ikke, er dette elementet lagt til den midlertidige sekvens . Hvis så , hopper den som starter deretter over med det neste elementet . Det gir en usortert sekvens
4
Skriv inn følgende : .
RemoveDuplicatesOne ( [ 4,2,5,1,6,3,4,2,6,4,2 , 6 ] ) : en
sekvensen sendes til funksjonen og duplikater er fjernet. Python returnerer følgende rekkefølge: . [ 1,2,3,4,5,6 ]
5
Skriv inn følgende : en
removeDuplicatesTwo ( [ 4,2,5,1 , 6,3,4,2,6,4,2,6 ] ) : en
sekvensen sendes til funksjonen og duplikater er fjernet. Python returnerer følgende rekkefølge: . [ 4,2,5,1,6,3 ]