Maison développement back-end tutoriel php . Distance maximale dans les tableaux

. Distance maximale dans les tableaux

Aug 17, 2024 am 06:35 AM

. Maximum Distance in Arrays

624. Distance maximale dans les tableaux

Difficulté :Moyen

Sujets :Array, gourmand

Vous recevez m tableaux, où chaque tableau est trié par ordre croissant.

Vous pouvez récupérer deux entiers dans deux tableaux différents (chaque tableau en choisit un) et calculer la distance. Nous définissons la distance entre deux entiers a et b comme étant leur différence absolue |a - b|.

Renvoyer la distance maximale.

Exemple 1 :

  • Entrée : tableaux = [[1,2,3],[4,5],[1,2,3]]
  • Sortie : 4
  • Explication : Une façon d'atteindre la distance maximale 4 est de choisir 1 dans le premier ou le troisième tableau et d'en choisir 5 dans le deuxième tableau.

Exemple 2 :

  • Entrée : tableaux = [[1],[1]]
  • Sortie : 0

Contraintes :

  • m == arrays.length
  • 2 <= m <= 105
  • 1 <= tableaux[i].length <= 500
  • -104 <= tableaux[i][j] <= 104
  • arrays[i] est trié par ordre croissant.
  • Il y aura au plus 105 entiers dans tous les tableaux.

Solution :

Nous devons calculer la distance maximale possible entre deux nombres entiers, chacun choisi dans des tableaux différents. L'observation clé est que la distance maximale se situera très probablement entre la valeur minimale d'un tableau et la valeur maximale d'un autre tableau.

Pour résoudre ce problème, nous pouvons suivre ces étapes :

  1. Suivez la valeur minimale et la valeur maximale lorsque vous parcourez les tableaux.
  2. Pour chaque tableau, calculez la distance maximale potentielle en comparant le minimum du tableau actuel avec le maximum global et le maximum du tableau actuel avec le minimum global.
  3. Mettez à jour le minimum et le maximum globaux au fur et à mesure.

Implémentons cette solution en PHP : 624. Distance maximale dans les tableaux

<?php
// Example usage:
$arrays1 = [[1,2,3],[4,5],[1,2,3]];
echo maxDistance($arrays1); // Output: 4

$arrays2 = [[1],[1]];
echo maxDistance($arrays2); // Output: 0
?>




Explication:

  • min_value et max_value sont initialisés avec les valeurs minimale et maximale du premier tableau.
  • Au fur et à mesure que nous parcourons chaque tableau en commençant par le second :
    • Nous calculons la distance en comparant le minimum global avec le maximum du tableau actuel et le maximum global avec le minimum du tableau actuel.
    • Mettez à jour la max_distance chaque fois qu'une distance plus grande est trouvée.
    • Mettez à jour min_value et max_value pour refléter les valeurs minimales et maximales rencontrées jusqu'à présent.
  • Enfin, la fonction renvoie la distance maximale trouvée.

Cette solution s'exécute en temps O(m), où m est le nombre de tableaux, ce qui la rend efficace compte tenu des contraintes du problème.

Liens de contact

Si vous avez trouvé cette série utile, pensez à donner une étoile au référentiel sur GitHub ou à partager la publication sur vos réseaux sociaux préférés ?. Votre soutien signifierait beaucoup pour moi !

Si vous souhaitez du contenu plus utile comme celui-ci, n'hésitez pas à me suivre :

  • LinkedIn
  • GitHub

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium) 11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium) Mar 03, 2025 am 10:49 AM

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium)

Introduction à l'API Instagram Introduction à l'API Instagram Mar 02, 2025 am 09:32 AM

Introduction à l'API Instagram

Travailler avec les données de session Flash dans Laravel Travailler avec les données de session Flash dans Laravel Mar 12, 2025 pm 05:08 PM

Travailler avec les données de session Flash dans Laravel

Misque de réponse HTTP simplifié dans les tests Laravel Misque de réponse HTTP simplifié dans les tests Laravel Mar 12, 2025 pm 05:09 PM

Misque de réponse HTTP simplifié dans les tests Laravel

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Mar 14, 2025 am 11:42 AM

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST

Construisez une application React avec un Laravel Back End: Partie 2, React Construisez une application React avec un Laravel Back End: Partie 2, React Mar 04, 2025 am 09:33 AM

Construisez une application React avec un Laravel Back End: Partie 2, React

12 meilleurs scripts de chat PHP sur Codecanyon 12 meilleurs scripts de chat PHP sur Codecanyon Mar 13, 2025 pm 12:08 PM

12 meilleurs scripts de chat PHP sur Codecanyon

Notifications à Laravel Notifications à Laravel Mar 04, 2025 am 09:22 AM

Notifications à Laravel

See all articles