Map Frekuensi
Termasuk bagian Logika & Alur dalam perjalanan Kotlin di Coddy. Pelajaran 8 dari 63.
frequency map menyimpan seberapa sering setiap item muncul. Untuk setiap input, baca jumlahnya saat ini atau gunakan nol, lalu tulis kembali dengan menambahkan satu. Ini menggabungkan pencarian yang aman, penetapan yang dapat diubah, dan iterasi.
Di dalam main:
val counts = mutableMapOf<String, Int>()
for (word in listOf("red", "blue", "red")) {
counts[word] = (counts[word] ?: 0) + 1
}
println(counts["red"])Jumlah red dimasukkan sebagai satu, lalu diperbarui menjadi dua.
Frekuensi yang belum ada dimulai dari nol sebelum kemunculan saat ini ditambahkan.
Tantangan
SedangLengkapi wordFrequency dengan parameter words: List<String>, target: String. Buat peta frekuensi dan kembalikan berapa kali target muncul. Pencocokan membedakan huruf besar dan kecil.
Kecuali batas yang lebih ketat dinyatakan di atas, koleksi berisi paling banyak 100 elemen pada setiap tingkat, dan argumen integer serta nilai integer dalam koleksi berada di antara -1000 dan 1000. Teks yang diberikan untuk diurai dapat mencakup representasi yang tidak valid atau di luar rentang, seperti yang dijelaskan.
Kembalikan nilai bertipe Int. Pertahankan kode input/output yang disediakan. Kode tersebut membaca argumen skalar, satu per baris; list diawali dengan jumlah elemennya, lalu elemen-elemennya, dan map diawali dengan jumlah entrinya, lalu setiap key dan value. List bertingkat mengulangi format jumlah dan elemen untuk setiap baris. main yang disediakan mencetak nilai kembalian, diikuti satu karakter baris baru. List menggunakan format standar Kotlin dengan tanda kurung siku; jangan cetak label tambahan.
Coba sendiri
fun wordFrequency(words: List<String>, target: String): Int {
// Tulis solusimu di sini.
return 0
}
fun main() {
val wordsCount = readln().toInt()
val words = mutableListOf<String>()
for (i0 in 0 until wordsCount) {
val wordsItem = readLine().orEmpty()
words.add(wordsItem)
}
val target = readLine().orEmpty()
println(wordFrequency(words, target))
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
4Koleksi Bersarang
List Berisi ListMenelusuri BarisRingkasan BarisMeratakan List BertingkatRangkuman, Baris Tempat Duduk7Alur Pemrosesan Koleksi
Transformasi dengan MapMemfilter NilaiMenguji Aturan KoleksiMengakumulasi dengan FoldRangkuman: Total yang Disetujui2Map Bagian 2
Menelusuri Entri MapKunci dan NilaiMap FrekuensiMap BersarangRingkasan: Laporan Frekuensi5Proyek: Buku Kontak
Menyimpan KontakMencari KontakLatihan sendiri: Playground Kotlin