Il existe un tableau de N entiers. Nous allons prendre deux nombres du tableau et diviser ce tableau en trois parties. Pour être exact, nous prendrons des éléments aux indices P et Q. Et les indices des sous-réseaux seront [0, P-1], [P + 1, Q-1], [Q + 1, N-1]. Évidemment, 0 < P < Q < N-1, Q-P> 1. Nous voulons trouver la somme minimale des deux nombres. Par exemple, il existe trois façons de prendre deux nombres dans le tableau [5, 2, 4, 6, 3, 7].Javascript: Prenez deux nombres d'un tableau et divisez le tableau en trois sous-réseaux. Trouver la somme minimum des deux nombres
- indices 1 & 3. La somme est de 8
- indices 1 & 4. La somme est 5.
- indices 2 & 4. La somme est 7.
Ainsi, le minimum somme est 5.
J'ai essayé et écrit la fonction suivante pour obtenir cet effet. De toute évidence, c'est très lent. Mais je ne peux pas penser à un moyen d'écrire des algorithmes plus rapides.
const arrayOne = [5, 2, 4, 6, 3, 7]
console.log(arrayOne)
const breakChain = (arr) => {
let lowest = 2000000000
for (let open = 1; open < arr.length - 3; open ++) {
for (let close = open + 2; close < arr.length - 1; close ++) {
const low = arr[open] + arr[close]
if (low < lowest) {
lowest = low
}
}
}
console.log(lowest)
}
breakChain(arrayOne)
Ceci est un devoir. Essayez-le vous-même – Weedoze
S'il vous plaît montrer ce que vous avez essayé. Stackoverflow n'est pas un service gratuit d'écriture de code ou de tutoriel. L'objectif est de vous aider à corriger ** votre code ** – charlietfl
@charlietfl Je l'ai essayé moi-même. Évidemment, ce n'est pas l'algorithme le plus rapide au monde. –