0
votes

Trouver la plus petite paire Somme en tableau

C'est ce que j'ai essayé d'atteindre:

entrée: arr [] = {1, 7, 2, 9, 6}
La paire (1, 2) aura la paire de somme minimale I.e. 1 + 2 = 3

sortie: (1,2) = 3

  • Parce que la boucle tandis que la boucle est itératrice une fois, je ne suis pas en mesure d'atteindre le résultat prévu. Besoin d'aide !! xxx

6 commentaires

Vous voulez essentiellement trouver les deux plus petits numéros de la matrice, n'est-ce pas?


Cela signifierait commander le tableau et renvoyer les deux premiers articles :)


Ouais .. Mais émettez actuellement des mensonges dans la boucle tandis que comme elle itière une seule fois.


Pourquoi utilisez-vous stringbuilder ? Pourquoi ne pas simplement trouver le plus petit et à côté des plus petits nombres et faire un system.out.printf ("sortie: ("% d,% d) =% d% n ", N1, N2, N1, N2, (N1 + N2) );


@Wjs Stringbuilder a été utilisé pour formater le résultat, la façon dont elle était censée être. BTW Votre code semble beaucoup plus court et propre. Très appréciée !!


@Armandoballaci Votre idée a fait l'affaire. Merci mon pote !!


3 Réponses :


1
votes

Je pense que ce que vous obtenez fondamentalement les deux plus petits chiffres d'un tableau, j'espère ...

C'est une bonne truc, probablement pas plus efficace d'algorithmie, mais c'est rapide et sale: P>

Arrays.sort(arr); 
//This will sort your array.
if(arr.length>1){
System.out.println(arr[0]);
System.out.println(arr[1]);
}


0 commentaires

1
votes

Pour trouver les 2 derniers chiffres, essayez ceci:

int min1 = Integer.MAX_VALUE, min2 = Integer.MAX_VALUE;
for (int i : arr) {
  if (i < min1) {
    min2 = min1;
    min1 = i;
  } else if (i < min2) min2 = i;
}


0 commentaires

0
votes

problème corrigé avec cette solution simple: xxx


0 commentaires