📜  数组中最小的对和

📅  最后修改于: 2021-06-25 23:30:05             🧑  作者: Mango

给定一个由不同整数arr []组成的数组,任务是找到一个具有最小和的对,并打印该和。
例子:

方法:

  • 从数组中找到最小元素,并将其存储在min中
  • 从数组中找到第二个最小元素,并将其存储在secondMin中
  • 打印min + secondMin

下面是上述方法的实现:

C++
// C++ program to print the sum of the minimum pair
#include 
using namespace std;
 
// Function to return the sum of
// the minimum pair from the array
int smallest_pair(int a[], int n)
{
    int min = INT_MAX, secondMin = INT_MAX;
    for (int j = 0; j < n; j++) {
 
        // If found new minimum
        if (a[j] < min) {
 
            // Minimum now becomes second minimum
            secondMin = min;
 
            // Update minimum
            min = a[j];
        }
 
        // If current element is > min and < secondMin
        else if ((a[j] < secondMin) && a[j] != min)
 
            // Update secondMin
            secondMin = a[j];
    }
 
    // Return the sum of the minimum pair
    return (secondMin + min);
}
 
// Driver code
int main()
{
    int arr[] = { 1, 2, 3 };
    int n = sizeof(arr) / sizeof(arr[0]);
 
    cout << smallest_pair(arr, n);
 
    return 0;
}


Java
// Java program to print the sum
// of the minimum pair
import java .io.*;
 
class GFG
{
// Function to return the sum of
// the minimum pair from the array
static int smallest_pair(int[] a, int n)
{
    int min =  Integer.MAX_VALUE, secondMin =  Integer.MAX_VALUE;
    for (int j = 0; j < n; j++)
    {
 
        // If found new minimum
        if (a[j] < min)
        {
 
            // Minimum now becomes second minimum
            secondMin = min;
 
            // Update minimum
            min = a[j];
        }
 
        // If current element is > min and < secondMin
        else if ((a[j] < secondMin) && a[j] != min)
 
            // Update secondMin
            secondMin = a[j];
    }
 
    // Return the sum of the minimum pair
    return (secondMin + min);
}
 
// Driver code
public static void main(String[] args)
{
    int[] arr = { 1, 2, 3 };
    int n = arr.length;
 
    System.out.println(smallest_pair(arr, n));
}
}
 
// This code is contributed
// by inder_verma


Python3
# Python3 program to print the
# sum of the minimum pair
import sys
 
# Function to return the sum of
# the minimum pair from the array
def smallest_pair(a, n) :
     
    min = sys.maxsize
    secondMin = sys.maxsize
     
    for j in range(n) :
 
        # If found new minimum
        if (a[j] < min) :
 
            # Minimum now becomes
            # second minimum
            secondMin = min
 
            # Update minimum
            min = a[j]
         
        # If current element is > min
        # and < secondMin
        elif ((a[j] < secondMin) and
               a[j] != min) :
 
            # Update secondMin
            secondMin = a[j]
     
    # Return the sum of the minimum pair
    return (secondMin + min)
 
# Driver code
if __name__ == "__main__" :
 
    arr = [ 1, 2, 3 ]
    n = len(arr)
 
    print(smallest_pair(arr, n))
 
# This code is contributed by Ryuga


C#
// C# program to print the sum
// of the minimum pair
using System;
 
class GFG
{
// Function to return the sum of
// the minimum pair from the array
static int smallest_pair(int[] a, int n)
{
    int min = int.MaxValue, secondMin = int.MaxValue;
    for (int j = 0; j < n; j++)
    {
 
        // If found new minimum
        if (a[j] < min)
        {
 
            // Minimum now becomes second minimum
            secondMin = min;
 
            // Update minimum
            min = a[j];
        }
 
        // If current element is > min and < secondMin
        else if ((a[j] < secondMin) && a[j] != min)
 
            // Update secondMin
            secondMin = a[j];
    }
 
    // Return the sum of the minimum pair
    return (secondMin + min);
}
 
// Driver code
public static void Main()
{
    int[] arr = { 1, 2, 3 };
    int n = arr.Length;
 
    Console.Write(smallest_pair(arr, n));
}
}
 
// This code is contributed
// by Akanksha Rai


PHP
 min
        // and < secondMin
        else if (($a[$j] < $secondMin) &&
                  $a[$j] != $min)
 
            // Update secondMin
            $secondMin = $a[$j];
    }
 
    // Return the sum of the minimum pair
    return ($secondMin + $min);
}
 
// Driver code
$arr = array( 1, 2, 3 );
$n = sizeof($arr);
echo smallest_pair($arr, $n);
 
// This code is contributed by ajit
?>


Javascript


输出:
3

如果您希望与行业专家一起参加现场课程,请参阅《 Geeks现场课程》和《 Geeks现场课程美国》。