DEV Community

Harsh Prajapat
Harsh Prajapat

Posted on

Top interviews asked programs

Maximum and minimum number from array

let array: [Int] = [4, 8, 2, 6, 9]
var max = array[0]
var min = array[0]

for i in 0..<array.count {
  if array[i] > max  {
    max = array[I]
  }
  if array[i] < min {
    min = array[I]
  }
}

print("Max number: \(max)")
print("Min number: \(min)")
Enter fullscreen mode Exit fullscreen mode

Find target number: Example1

func searchNumber(_ array: [Int], _ target: Int) -> Int {
  for (index, value) in array.enumerated() {
    if value == target {
      return value
    }
  }
  return -1
}

let array: [Int] = [4, 8, 2, 6, 9]
let target = 6
print(searchNumber(array, target))

// Output: 6
Enter fullscreen mode Exit fullscreen mode

Find target number: Example2

let array: [Int] = [4, 8, 2, 6, 9]
let target = 6

for i in 0..<array.count {
  if array[i] == target {
    print("Found \(target) at index \(i)")
  }
}

// Output: Found 6 at index 3
Enter fullscreen mode Exit fullscreen mode

✅ Swift: Find Two Numbers That Sum to a Target

Input:

An array of integers
A target sum value

Output:

true if any two numbers sum to the target, else false

Using a Set (Efficient O(n) Solution)

func hasTargetSum(_ nums: [Int], _ target: Int) -> Bool {
    var seen = Set<Int>()

    for num in nums {
        let complement = target - num
        if seen.contains(complement) {
            return true
        }
        seen.insert(num)
    }

    return false
}

// Example usage:
let numbers = [2, 7, 11, 15]
let target = 9
print(hasTargetSum(numbers, target)) // Output: true (2 + 7)
Enter fullscreen mode Exit fullscreen mode

🔹 Explanation:
For each number, calculate its complement: target - num.

Check if the complement is already in the set.

If yes, we found a pair. Otherwise, add the number to the set and continue.

Using loop

let numbers = [2, 7, 11, 15]
let target = 9

for i in 0..<numbers.count {
  for j in i+1..<numbers.count {
    if numbers[i] + numbers[j] == target {
      print("(\(numbers[i]), \(numbers[j]))")
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

✅ Swift Program: Find Second Largest Element

func secondLargest(in numbers: [Int]) -> Int? {
    guard numbers.count >= 2 else { return nil }

    var first = Int.min
    var second = Int.min

    for num in numbers {
        if num > first {
            second = first
            first = num
        } else if num > second && num != first {
            second = num
        }
    }

    return second == Int.min ? nil : second
}

// Example usage
let nums = [12, 35, 1, 10, 34, 1]
if let result = secondLargest(in: nums) {
    print("Second largest number: \(result)")
} else {
    print("No second largest number found.")
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)