Tekrar - Frekans Sayacı
Coddy'nin Ruby Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 37 / 56.
Önceki bölümlerdeki varsayılan değerli hash'leri, yinelemeyi ve sıralamayı klasik bir meydan okumada bir araya getirin: bir kelime frekans raporu.
Görev
OrtaTek bir girdi satırı, yani bir cümle okuyun. Her kelimeyi (boşluklara göre bölünmüş ve küçük harfe dönüştürülmüş) frekansına eşleyen bir Hash.new(0) eşlemesi oluşturun.
Ardından şunları yazdırın:
- Benzersiz kelimelerin toplam sayısı
- Azalan frekans sırasına göre (eşitlik durumunda kelimeye göre alfabetik olarak) her kelime için şu biçimde bir satır:
<word>: <count>
the quick brown fox jumps over the lazy dog the dog girdisi için çıktı şöyledir:
8
the: 3
dog: 2
brown: 1
fox: 1
jumps: 1
lazy: 1
over: 1
quick: 1Kendin dene
input = gets.chomp
# YAPILACAK: kelime → sayı şeklinde bir Hash.new(0) oluşturun, ardından şunları yazdırın:
# 1) benzersiz kelime sayısı
# 2) sayıya göre azalan, eşitlik durumunda kelimeye göre artan şekilde sıralanmış girdiler
Mantık ve Akış bölümündeki tüm dersler
1Dizeler Detaylı İnceleme
Dize Metotlarına Genel BakışDize EnterpolasyonuDizeler Üzerinde YinelemeBölme ve BirleştirmeTekrar - Dize Dokuyucu4Bloklar, Proc'lar ve Lambda'lar
Blok Nedir?do..end ve Süslü Parantezleryield Anahtar SözcüğüBlok ParametreleriProc'lar ve Lambda'larÖzet - Özel Yineleyici7Hash'ler 2. Bölüm
Varsayılanlarla Hash.newHash'ler Üzerinde Yinelemeİç İçe Hash'lerBirleştirme ve DönüştürmeTekrar - Frekans Sayacı10Proje - Öğrenci Kayıtları
Projeye Genel BakışÖğrenci Ekle5Enumerable Gücü
Seçme ve ReddetmeMap ZincirlemeReduce / Injectcount, all?, any?, none?group_by ve partitionsort_by, min_by, max_byTekrar - Veri HattıKendi başına pratik yap: Online Ruby derleyicisi