Principes de Géométrie Solide

Si deux solides sont compris entre deux plans parallèles, et que tout plan parallèle à ces deux plans coupe les deux solides selon des sections de même aire, alors les volumes des deux solides sont égaux. Polygones Réguliers Un polygone régulier est un polygone plan dont tous les côtés et tous les angles sont égaux. À l'exception du triangle éq ...

Publié le 7 octobre à 04h39

Implémentation et utilisation d'une pile séquentielle en C

Une pile est une structure de données linéaire qui suit le principe LIFO (Last In, First Out). Les opérations d’insertion (push) et de suppresion (pop) ne sont autorisées qu’à une seule extrémité, appelée sommet de la pile. L’autre extrémité est fixe et appelée base. Pile séquentielle Une pile séquentielle utilise un tableau statique ou dynamiq ...

Publié le 11 septembre à 15h48

Implémentation d'un arbre de Fenwick bidimensionnel pour les requêtes de somme sur grille

La gestion dynamique de points sur un maillage et le calcul du nombre d'éléments actifs à l'intérieur d'une zone rectangulaire relèvent de problèmes classiques en algorithmique. Lorsque les mises à jour ponctuelles et les requêtes d'intervalle sont fréquentes, la structure de données optimale est l'arbre de Fenwick bidimensionnel (Binary Indexe ...

Publié le 3 septembre à 05h45

Implémentation d'un Tampon Circulaire Inspiré du kfifo du Noyau Linux

Cet article explore la conception et l'implémentation d'un tampon circulaire, en s'inspirant fortement de la structure kfifo du noyau Linux. L'objectif est de créer un mécanisme de stockage de données efficace et performant, particulièrement utile dans les scénarios de communication inter-processus ou de gestion de flux de données. Puissances ...

Publié le 26 août à 19h13

Problèmes de programmation des écoles multiples 11

T1 Problème de criblage par intervalle #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N = 1e6+10; int prime[N]; ll values[N];//pour [L, R] bool not_prime[N]; ll left, right; void sieve(int size){ for(int i = 2; i <= size; ++i){ if(!not_prime[i]) prime[++prime[0]] = i; for(int j = 1; j <= prime[0] & ...

Publié le 14 août à 12h49

Les listes en Python : Guide complet

En Python 3, la structure de données list est un type de séquence mutable fondamental et largement utilisé. Elle permet de stocker une collection ordonnée d'éléments. Ce guide explore ses caractéristiques essentielles, ses opérations courantes, ses considérations de performance et les bonnes pratiques. Caractéristiques principales Ordonnée : L ...

Publié le 5 août à 05h19

Gestionnaire de contacts en C avec tableau statique

Le gestionnaire repose sur une structure double niveau : une entité Personne encapsulant les données individuelles, et un conteneur Annuaire agrégeant ces entités avec un compteur de population. Structure des données typedef struct { char identifiant[NOM_TAILLE]; int annees; char genre[GENRE_TAILLE]; char numero[TELEPHONE_TAILLE ...

Publié le 1 août à 09h43

Équilibrer une Balance avec des Contraintes Séquentielles

Vous disposez de N masses, chacune ayant un poids unique A_1, A_2, ..., A_N. Votre tâche consiste à placer chaque masse sur un plateau d'une balance (gauche ou droite) dans un ordre spécifique. Une chaîne de caractères S de longueur N indique la condition d'équilibre à respecter après le placement de la i-ème masse : 'L' signifie que le plateau ...

Publié le 31 juillet à 00h58

Recherche du Premier Caractère Unique dans une Chaîne en Java (LeetCode 387)

La tâche consiste à identifier le premier caractère non répétitif au sein d'une chaîne de caractères donnée et à renvoyer son indice. Si aucun caractère unique n'est trouvé, la fonction doit retourner -1. Exemples : s = "leetcode" retourne 0 (le caractère 'l' est le premier unique) s = "loveleetcode" retourne 2 (le caractèr ...

Publié le 25 juillet à 04h26

Manipulations fondamentales sur les listes chaînées

Compréhension des structures de liste chaînée Prenons un exemple de liste chaînée : let liste = [1, 2, 3, 4] Dans cette structure, liste.val vaut 1, et liste.next correspond au nœud contenant [2, 3, 4] où liste.next.val vaut 2. Construction d'une liste chaînée à partir d'un vecteur Convertir les éléments d'un vecteur en une liste chaînée peut s ...

Publié le 17 juillet à 18h33