Problèmes LeetCode courants et solutions optimisées en C#
Somme de deux nombres
Étant donné un tableau d'entiers nombres et une valeur cible cible, trouvez deux indices dans le tableau dont les éléments s'additionnent pour atteindre la cible. Chaque entrée n'a qu'une seule solution, et vous ne pouvez pas utiliser le même élément deux fois.
Exemple : Avec nombres = [2, 7, 11, 15] et cible = 9, les i ...
Publié le 20 juillet à 12h24
Arbres binaires et algorithmes de backtracking
Les arbres binaires sont des structures de données fondamentales. Cet article explore les algorithmes courants liés à leur manipulation, en incluant la construction, le parcours, la recherche et la modification.
Définition d'un nœud d'arbre binaire
class TreeNode {
int data;
TreeNode leftChild;
TreeNode rightChild;
TreeNode(in ...
Publié le 20 juillet à 02h48
Solutions aux Problèmes du AtCoder Beginner Contest 354
A - Plante Exponentielle
Ce problème décrit une plante dont la hauteur augmente de manière exponentielle chaque jour. Initialement, la hauteur est de 1. Chaque jour, la plante double sa hauteur cumulée jusqu'à présent. Nous devons déterminer le nombre minimal de jours nécessaires pour que la plante atteigne ou dépasse une hauteur cible spécifié ...
Publié le 19 juillet à 18h26
Calcul de la Somme Minimale d'un Chemin dans un Triangle
On vous fournit une structure de données représentant un triangle de nombres entiers. Votre tâche est de déterminer la somme minimale des valeurs le long d'un chemin qui part du sommet du triangle et se termine sur l'une des cellules de sa base. La règle de déplacement est la suivante : depuis un élément triangle[i][j] (où i est l'indice de la ...
Publié le 19 juillet à 05h37
Algorithmes classiques : élimination par position, combinaisons de somme et distance d'édition
Élimination des positions impaires
Énoncé
Étant donné une séquence contenant tous les entiers de 0 à n en ordre croissant, on applique un filtrage répété : à chaque passage, on supprime les éléments situés aux positions impaires. On répète cette opération jusqu'à ce qu'il ne reste qu'un seul nombre. Il faut déterminer ce dernier nombre survi ...
Publié le 18 juillet à 20h58
Implémentation d'une file d'attente avec deux piles en Go
Problématique
232. Implémenter une file d'attente avec des piles
Utilisez deux piles pour implémenter une file d'attente de premier entré, premier sorti (FIFO). Votre file d'attente doit prendre en charge toutes les opérations standard (ajouter, retirer, consulter, vérifier si vide) :
Implémentez la classe FileAttente :
void ajouter(int x) : a ...
Publié le 18 juillet à 09h15
Intersection de Lignes (Géométrie Comput de Base + Détermination de la Relation Positionnelle de Deux L Droites)
Lien du problème : http://poj.org/problem?id=1269
Description :
Nous savons tous qu'une paire de points distincts sur un plan définit une ligne et qu'une paire de lignes sur un plan intersectera de trois manières : 1) aucune intersection car elles sont parallèles, 2) intersection en une ligne car elles se superposent (c'est-à-dire qu'elles sont ...
Publié le 18 juillet à 09h01
Listes Linéaires : Définition, Opérations et Implémentation Séquentielle
Introduction aux Listes Linéaires
Une liste linéaire est une structure de données fondamentale, caractérisée par une séquence finie d'éléments de même type. Chaque élément, sauf le premier, possède un prédécesseur unique, et chaque élément, sauf le dernier, a un successeur unique. Lorsque la liste est vide, elle ne contient aucun élément.
Forme ...
Publié le 16 juillet à 18h34
Résolution de problèmes de sac à dos avec programmation dynamique
Dernière Poids de Pierre II (LeetCode 1049)
Ce problème consiste à minimiser le poids restant après avoir brisé des pierres. L'approche optimale transforme le problème en recherche d'une pratition équilibrée des pierres.
Stratégie de résolution
Calculer la somme totale des poids
Définir la cible comme la moitié de cette somme
Utiliser un sac à ...
Publié le 15 juillet à 14h01
Concepts Fondamentaux des Structures de Données et Algorithmes en Python
Les structures de données constituent l'épine dorsale de l'informatique, définissant la manière dont les informations sont organisées pour une manipulation efficace. Elles représentent une collection d'éléments de données et les relations qui existent entre eux, servant de fondation pour la conception d'algorithmes robustes.
Complexité des Algo ...
Publié le 14 juillet à 23h11