Forum Coders' city Strona Główna Coders' city
Nasza pasja to programowanie!
 

 PomocPomoc   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy  RejestracjaRejestracja 
Archiwum starego forum + teoria    RSS & Panel/SideBar
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Potrzebuję szybkiej odpowiedzi na moje pytanie... Zasady

Funkcja zwracająca liczbę powtórzeń



 
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Python
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
FMarcin



Dołączył: 02 Lip 2017
Posty: 1

PostWysłany: Nie Lip 02, 2017 7:38 pm  OP    Temat postu: Funkcja zwracająca liczbę powtórzeń Odpowiedz z cytatem Pisownia

Niedawno zacząłem uczyć się Pythona i trafiłem na zadanie z którym nie potrafię sobie poradzić. Generalnie chodzi o to aby napisać funkcję, która analizuje listę zawierającą wyłącznie liczby pod kątem ilości ich powtórzeń, a następnie wyświetla liczbę która powtórzyła się największą ilość razy, pod warunkiem, że jest to ilość nieparzysta. Posłużę się przykładem:

L = [2,3,6,3,2,3,3,3]

w tym wypadku funkcja powinna pokazać liczbę 3

L = [2,5,2,7,2,9,2]

w tym wypadku funkcja powinna zwrócić None, gdyż liczba dwa powtarza się parzystą ilość razy.

Proszę o wskazówkę.
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
hurgadion



Dołączył: 06 Kwi 2011
Posty: 799
Skąd: Web :)

PostWysłany: Pon Lip 03, 2017 12:35 pm      Temat postu: Odpowiedz z cytatem Pisownia

Hej,
nie wiem czy optymalnie, ale przetestuj:
Kod:

def ile_powt(a):
    V = {}
    pmax = 0
    emax = a[0]
    for elem in a:
        if elem in V.keys():
            V[elem] += 1
        else:
            V[elem] = 1
        if V[elem] > pmax:
            pmax = V[elem]
            emax = elem
    if pmax % 2 != 0:
        return emax
    return None


Pozdrawiam :)

_________________
miasto nauki praktycznej
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Odwiedź stronę autora Numer GG
Wyświetl posty z ostatnich:   
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Python Wszystkie czasy w strefie CET (Europa)

Strona 1 z 1

 
Skocz do:  
Możesz pisać nowe tematy
Możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Możesz dodawać załączniki na tym forum
Możesz pobierać pliki z tego forum




Debug: strone wygenerowano w 0.16433 sekund, zapytan = 11
contact

| Darmowe programy i porady Jelcyna | Tansze zakupy w Helionie | MS Office Blog |