Anagram Grupları
Coddy'nin Swift Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 54 / 56.
Görev
Ortaİki kelime, sıralanmış harfleri eşleşiyorsa anagramdır: listen ve silent kelimelerinin her ikisi de eilnst şeklinde sıralanır.
Tek bir girdi satırı okuyun: virgülle ayrılmış kelime listesi (küçük harf, kelime içinde boşluk yok).
Kelimeleri sıralanmış harf imzalarına (signature) göre gruplandırın. Şu sırayla yazdırın:
- İki veya daha fazla kelime içeren her grup için bir satır,
<signature>: <word1>,<word2>,...formatında. Bir grup içinde, kelimeleri girdi sırasına göre tutun. Grupları imzaya göre alfabetik olarak sıralayın. Total groups: <n>(iki veya daha fazla kelime içeren grupların sayısı).
listen,silent,abc,enlist,cab,xyz girdisi için çıktı şöyledir:
abc: abc,cab
eilnst: listen,silent,enlist
Total groups: 2Kendin dene
let words = readLine()!.components(separatedBy: ",")
// TODO: [signature: [word]] oluştur; boyutu >= 2 olan sıralanmış grupları yazdır;
// ardından 'Total groups: <n>' yazdır
Mantık ve Akış bölümündeki tüm dersler
1Stringler Derinlemesine
Sayma ve İndekslerBüyük-Küçük Harf ve KırpmaStringlerde AramaBölme ve BirleştirmeAlt Stringleri DeğiştirmeÖzet - Kullanıcı Adı Kontrolü4Kümeler
Küme OluşturmaBirleşim ve KesişimFark ve Simetrik FarkAlt Küme ve Üst KümeÖzet - Etiket Filtresi7Proje - Alışkanlık Takibi
Projeye Genel BakışTamamlandı Olarak İşaretle10Proje - Quiz Motoru
Projeye Genel BakışSoruları Sorma2Aralıklar ve Adımlar
Kapalı ve Yarı AçıkStride (Adım)Aralık MetotlarıSwitch İçinde AralıklarÖzet - Takvim Izgarası5Yüksek Mertebeden Fonksiyonlar Bölüm 1
MapFilterReduceMap, filter, reduce zincirlemeÖzet - Kelime İstatistikleri