Search code examples
arraysswiftfor-loopforeachswift3

How to find duplicate values in integer array in Swift?


I need to know how to find duplicate values in integer array by loop method in swift? I tried to ->

func findDuplicates (array: [Int]) {
        var prevItem = array[0]
        for i in 0...array.count-1 {
            if prevItem == array[i] {
                print(i)
            } else {
               print("there is no any duplicates values")
            }
        }
}

please show my solution in this way!


Solution

  • let list = [5,7,1,1,7,9]
    
    var result : [Int] = []
    var duplicateArr : [Int] = []
    
    for i in 0..<list.count {
        var isDuplicate = false
        if duplicateArr.count == 0 {
            duplicateArr.append(list[i])
        }else{
            print(list[i])
             for j in 0..<duplicateArr.count{
                 if duplicateArr[j] == list[i] {
                     isDuplicate = true
                 }
             }
            if isDuplicate {
                result.append(list[i])
            }else{
                duplicateArr.append(list[i])
            }
        }
    }
    print("Duplicate list -> \(result))