Python ile Dizideki Elemanların Kaç Kere Tekrar Edildiğini Bulma
Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin onuncu sorusuna geçelim:
- Bir dizi içerisindeki elemanların kaç kere tekrar edildiğini bulma
- Örnek girdi: [5, 3, 4, 8, 5, 3, 1, 5]
- Örnek çıktı: {5: 3, 3: 2, 4: 1, 8: 1, 1: 1}
- Python’da bir dizideki elemanların kaç kere tekrar edildiğini bulmak için genellikle
collections
modülündekiCounter
sınıfını kullanırız. Bakınız:
from collections import Counter
def tekrar_sayilari(dizi):
return Counter(dizi)
# Örnek kullanım:
giris_dizi = [5, 3, 4, 8, 5, 3, 1, 5]
cikis = tekrar_sayilari(giris_dizi)
print(cikis) # Counter({5: 3, 3: 2, 4: 1, 8: 1, 1: 1})
Yukarıdaki kodumuz, dizideki her bir elemanın kaç kere tekrar ettiğini bir Counter
nesnesi olarak döndürür. Counter
nesnesi, bir sözlüğe benzer ve her bir elemanın kaç kere tekrar ettiğini gösterir. Kodu çalıştırmak için: Trinket
- Her elemanı sözlüğün anahtarı olarak kullanan ve karşılığında tekrar sayısını saklayan bir sözlük oluşturabiliriz.
def tekrar_sayilari(dizi):
tekrarlar = {}
for eleman in dizi:
if eleman in tekrarlar:
tekrarlar[eleman] += 1
else:
tekrarlar[eleman] = 1
return tekrarlar
giris_dizi = [5, 3, 4, 8, 5, 3, 1, 5]
cikis = tekrar_sayilari(giris_dizi)
print(cikis) # {5: 3, 3: 2, 4: 1, 8: 1, 1: 1}
Kodu çalıştırmak için: Trinket