Advertisement
Guest User

Untitled

a guest
Oct 26th, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.77 KB | None | 0 0
  1. import Foundation
  2.  
  3. func getLetterFrequency(cipherText: String) -> [(String, Int)] {
  4. let alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  5. var frequencies = alphabet.characters.flatMap { (String($0), 0) }
  6.  
  7. cipherText.characters.forEach { letter in
  8. guard let alphabetRange = alphabet.range(of: String(letter).uppercased()) else { return }
  9. let letterIndex = alphabet.distance(from: alphabet.startIndex, to: alphabetRange.lowerBound)
  10. let newValue = frequencies[letterIndex].1 + 1
  11. frequencies[letterIndex] = (frequencies[letterIndex].0, newValue)
  12. }
  13.  
  14. return frequencies
  15. }
  16.  
  17. let cipherText = "asdfjkashdfiuewfzxvbeirlureasdhabaweqwertyyupoiualskdffhzxmcvb"
  18. let frequencies = getLetterFrequency(cipherText: cipherText)
  19. frequencies.forEach { print($0) }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement