Menu
Coddy logo textTech

Kümeler Oluşturma

Coddy'nin Kotlin Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 11 / 63.

Bir küme farklı öğeleri tutar. setOf salt okunur bir küme oluşturur; bir listeyi toSet ile dönüştürmek yinelenen değerleri kaldırır. Bir kümenin üyeliği vardır, konumsal indeksleme yoktur. Sıralı çıktı üretmeden önce bir kümeyi sıralayın.

main içinde:

val ids = setOf(4, 2, 4, 7)
println(ids.size)

Tekrarlanan dört yalnızca bir kez görünür ve geriye üç farklı değer kalır.

Bir küme benzersiz değerleri depolar; liste tarzı dizinlenmiş erişim sağlamaz.

challenge icon

Görev

Orta

distinctCount işlevini items: List<Int> parametresiyle tamamlayın. Birbirinden farklı tamsayıların sayısını döndürün.

Yukarıda daha sıkı sınırlar belirtilmediği sürece, koleksiyonlar her düzeyde en fazla 100 öğe içerir ve tamsayı bağımsız değişkenleri ile tamsayı koleksiyon değerleri -1000 ile 1000 arasındadır. Ayrıştırma için sağlanan metin, açıklandığı şekilde geçersiz veya aralık dışı gösterimler içerebilir.

Int türünde bir değer döndürün. Sağlanan girdi/çıktı kodunu koruyun. Bu kod, skaler bağımsız değişkenleri satır başına bir tane okur; bir liste, ardından öğeleri gelen sayısıyla başlar ve bir map, ardından her anahtar ve değerin geldiği giriş sayısıyla başlar. İç içe listeler, her satır için sayı ve öğeler biçimini tekrarlar. Sağlanan main, dönüş değerini ve ardından bir yeni satır yazdırır. Listeler Kotlin'in standart köşeli parantezli biçimini kullanır; ek etiket yazdırmayın.

Kendin dene

fun distinctCount(items: List<Int>): Int {
    // Çözümünüzü buraya yazın.
    return 0
}
fun main() {
    val itemsCount = readln().toInt()
    val items = mutableListOf<Int>()
    for (i0 in 0 until itemsCount) {
        val itemsItem = readln().toInt()
        items.add(itemsItem)
    }
    println(distinctCount(items))
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık ve Akış bölümündeki tüm dersler

Kendi başına pratik yap: Kotlin playground