
Quand il y a un problème lié à la recherche d'un créneau commun entre 2 personnes.
vous pouvez utiliser la technique des 2 points pour le savoir.
function availableDuration(slots1, slots2, d) {
let i = 0;
let j = 0;
while (i < slots1.length && j < slots2.length) {
// Finding the boundaries of the intersection, or the common slot
const left = Math.max(slots1[i][0], slots2[j][0]);
const right = Math.min(slots1[i][1], slots2[j][1]);
if (right - left >= d) {
return [left, left + d];
}
// Always move the pointer of the slot that ends earlier
if (slots1[i][1] < slots2[j][1]) {
i++;
} else {
j++;
}
}
return [];
}
// Example usage
const slots1 = [[10, 50], [60, 120], [140, 210]];
const slots2 = [[0, 15], [60, 70]];
const d = 8;
const result = availableDuration(slots1, slots2, d);
console.log("Earliest common time slot:", result);
// Earliest common time slot: [ 60, 68 ]
Référence
Pour plus d'informations détaillées, veuillez consulter
https://www.geeksforgeeks.org/meeting-scheduler-for-two-persons/
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Ripple a-t-il toujours une valeur d'investissement ?
Solution en cas d'échec de session
Qu'est-ce que le courrier électronique
La différence entre le masquage et le démasquage des caractères génériques
Que sont les plug-ins jquery ?
tutoriel d'exécution de code c++
Solution au rapport Java indiquant que les entrées du chemin de construction sont vides
Quelles sont les méthodes pour empêcher l'injection SQL ?