Comprendre l'algorithme du plus long sous-chaîne palindromique (LeetCode #5)

Cette analyse se concentre sur la résolution du problème 5 de LeetCode, "Plus Longue Sous-chaîne Palindromique", en utilisant la méthode d'expansion à partir du centre. Le code fourni est écrit en Java. L'approche clé consiste à traiter séparément les palindromes de longueur impaire et de longueur paire. Structure Générale du Code cla ...

Publié le 10 juillet à 23h03

Recherche des puissances parfaites - Factorisation en nombres premiers

Problème : Trouver la valeur maximale de p telle que x = bp, où b est un entier. Par exemple, 25 = 52 et 64 = 26. L'entrée est x, la sortie est p. La solutino repose sur la décomposition en facteurs premiers du nombre donné, followed par le calcul du PGCD des exposants. Fonction de décomposition en facteurs premiers : int facteurs[100]; int exp ...

Publié le 10 juillet à 04h10

Implémentation de base d'une file de priorité en TypeScript

Plus efficace qu'une file d'attente standard Chaque élément extrait possède la priorité la plus élevée Peut être implémentée avec diverses structures de données comme les tableaux ou les listes chaînées, mais la structure de **tas** est la plus courante Concepsion L'immplémentaiton repose sur une structure de **tas**, qui utilise un tableau c ...

Publié le 9 juillet à 02h24

Détection des nombres de sommes de puissances consécutives

Détection des nombres de sommes de puissances consécutives Un entier positif est appelé « nombre de somme de puissances » s'il peut s'écrire comme la somme de puissances d'entiers naturels consécutifs commençant à 1, avec un exposant non nul. Par exemple, 2025 est un tel nombre car 2025 = 1³ + 2³ + 3³ + 4³ + 5³ + 6³ + 7³ + 8³ + 9³. Il est possi ...

Publié le 5 juillet à 03h21

Conversion Binaire: Trouver le Nombre Minimum d'Opérations

Problème des interrupteurs mystères : https://www.acwing.com/problem/content/97/ Lorsque les opérations de la première ligne sont déterminées, chaque opération suivante devient contrainte. Nous devons énumérer chaque état possible de la première ligne, en appuyant sur chaque interrupteur, qu'il soit allumé ou étient, pour trouver toutes les sol ...

Publié le 4 juillet à 22h47

Trouver les k éléments les plus fréquents

L'objectif est d'identifier les k éléments qui apparaissent le plus souvent dans un tableau donné. L'algorithme doit être plus performant qu'une complexité temporelle de O(n log n). Analyse du problème : Compter la fréquence de chaque élément. Trier les éléments en fonctino de leur fréquence. Sélectionner les k éléments les plus fréquents. La ...

Publié le 4 juillet à 01h06

Compétition Mensuelle de Mai 2023 de la Shanghai Computer Society

T1 : Tri par Ordre Croissant (II) Limite de Mémoire : 256 MoLimite de Temps : 1000 ms Description du Problème : Étant donné une permutation de longueur n, à chaque opération, vous pouvez sélectionner un élément et le déplacer au début ou à la fin. Détermniez le nombre minimum d'opérations nécessaires pour transformer la permutation en une séque ...

Publié le 2 juillet à 04h15

Compter les nombres premiers avec le Crible d'Ératosthène

Description: Compter le nombre de nombres premiers inférieurs à un nombre non négatif n. Pour résoudre ce problème, nous utiliserons l'algorithme du Crible d'Ératosthène. Le principe est de marquer les nombres non-premiers en commençant par le premier nombre premier (2) et en élimniant tous ses multiples, puis en passsant au nombre premier suiv ...

Publié le 26 juin à 20h24

Manipulation de listes chaînées : suppression d'éléments, conception et inversion

Ce jour marque la troisième journée d'exercices axés sur les structures de données de listes chaînées. Nous allons aborder trois problèmes classiques : la suppression d'éléments spécifiques, la conception d'une classe de liste chaînée et l'inversion d'une liste chaînée. Suppression d'éléments d'une liste chaînée Le premier problème consiste à s ...

Publié le 24 juin à 02h05

Algorithme de remplissage des régions encerclées dans une matrice bidimensionnelle

Le problème des régions encerclées consiste à modifier une matrice bidimensionnelle composée des caractères 'X' et 'O'. L'objectif est d'identifier tous les groupes de 'O' qui sont complètement entourés par des 'X' et de les remplacer par des 'X'. Une règle fondamentale s'aplique : les 'O' situés sur les bords de la matrice, ou connectés à un ' ...

Publié le 23 juin à 01h38