Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,890 questions

51,820 answers

573 users

How to find K most frequent elements in an unsorted array with Swift

1 Answer

0 votes
import Foundation

func printKMostFrequentNumbers(arr: [Int], K: Int) {
    var frequencyMap = [Int: Int]()
    
    for number in arr {
        frequencyMap[number, default: 0] += 1
    }
    
    let sortedFrequency = frequencyMap.sorted { $0.value > $1.value }
    
    for i in 0..<K {
        if i < sortedFrequency.count {
            print(sortedFrequency[i].key)
        }
    }
}

let arr = [4, 5, 19, 50, 5, 19, 5, 8, 19, 3, 3, 6, 3, 27, 19, 3, 3]
let K = 2

printKMostFrequentNumbers(arr: arr, K: K)



/*
run:

3
19

*/

 



answered Nov 29, 2024 by avibootz

Related questions

...