Membuat set
Termasuk bagian Logika dan Alur dalam perjalanan Swift di Coddy. Pelajaran 18 dari 56.
Set adalah koleksi nilai unik yang tidak berurutan. Setiap anggotanya memiliki tipe elemen yang sama, duplikat tidak diizinkan, dan urutan iterasinya tidak dapat diprediksi.
var colors: Set<String> = ["red", "green", "blue", "red"]
print(colors.count) // 3 (duplikat "red" diabaikan)Anotasi tipe Set<String> wajib digunakan dalam bentuk literal karena ["a", "b"] saja akan disimpulkan sebagai Array.
Tiga operasi inti: contains, insert, dan remove. Dua operasi terakhir mengembalikan informasi tentang apakah perubahan tersebut berdampak.
colors.insert("yellow") // menambahkannya
colors.insert("red") // sudah ada, tidak ada efek
colors.contains("green") // true
colors.remove("blue") // mengembalikan "blue" atau nil jika tidak adaMembuat set dari array menghapus duplikat dalam satu langkah:
let unique = Set([1, 2, 2, 3, 3, 3])
// 3 elemen, urutan persisnya tidak dijaminTantangan
PemulaBaca satu baris input: list kata yang dipisahkan dengan koma (mungkin ada duplikat).
Cetak tiga baris:
- Jumlah kata unik (gunakan
Set) - Kata-kata unik yang diurutkan secara alfabetis, digabungkan dengan
, truejika input berisi kataswift, jika tidak,false(gunakancontains)
Untuk input swift,ruby,go,swift,go,rust, output-nya adalah:
4
go,ruby,rust,swift
trueCoba sendiri
let words = readLine()!.components(separatedBy: ",")
// TODO: hapus duplikat dengan Set, cetak jumlahnya, gabungkan setelah diurutkan, lalu periksa apakah berisi teks persis dari instruksi
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika dan Alur
1Mendalami string
Jumlah dan indeksHuruf besar, huruf kecil, dan hapus spasiMencari dalam stringMemisahkan dan menggabungkanMengganti substringUlasan: Memeriksa nama pengguna4set
Membuat setGabungan dan IrisanSelisih dan Selisih SimetrisHimpunan Bagian dan Himpunan SupersetRingkasan: Filter Tag7Proyek: Pelacak Kebiasaan
Gambaran Umum ProyekTandai Selesai2Rentang dan Langkah
Rentang Tertutup vs Setengah TerbukaLangkahMetode RentangRentang dalam SwitchRangkuman: Kisi KalenderLatihan sendiri: Playground Swift