 Bir e-posta listesinde yinelenen kişi girişlerini aramak için bir algoritma tasarlayın.
Algoritma, adresin benzersiz mi yoksa mevcut bir adresin kopyası mı olduğunu belirlemek için önce her bir e-posta adresini okumalıdır. Doğruluğu sağlamak için, veriler yerel kısma (@'dan önce) ve etki alanı kısmına (@'dan sonra) dayalı olarak belirteçlere bölünmelidir. Ardından, bu belirteçler, kopyaları belirlemek için listedeki diğer e-posta adresleriyle karşılaştırılabilir. Yazım hatası olasılığını ele almak için girdideki hataları hesaba katan bir bulanık eşleştirme algoritması uygulanabilir. Örneğin, iki girişin eşleşen yerel parça belirteçleri ancak farklı etki alanı parçası belirteçleri varsa, bunun yinelenen mi yoksa yazım hatası olarak mı kategorize edilmesi gerektiğine karar vermek için bir bulanık eşleştirme algoritması kullanılabilir. Ek olarak, belirtilmiş verileri karşılaştırmak ve bir e-posta adresinin yinelenen olup olmadığını daha hızlı belirlemek için bir ikili arama ağacı kullanılabilir.