Les arbres binaires équilibrés en C

Magazine
Marque
GNU/Linux Magazine
Numéro
235
|
Mois de parution
mars 2020
|
Domaines


Résumé

Nous allons dans cet article revenir sur une structure de données très importante en informatique : les arbres binaires. Après quelques rappels sur l’ordre des algorithmes, les algorithmes de tri, les algorithmes de recherche d’éléments et le rééquilibrage des arbres, nous examinerons le code d’une implémentation en C d’une gestion d’arbres binaires équilibrés.


La suite est réservée aux abonnés. Déjà abonné ? Se connecter

Sur le même sujet

Y a une panne de secteurs !

Magazine
Marque
GNU/Linux Magazine
Numéro
238
|
Mois de parution
juin 2020
|
Domaines
Résumé

C’est l’histoire réelle d’une traque de secteurs défectueux jusque dans les fichiers concernés, d’une bourde, de la reconstruction en direct d’une table de partitions, et quelques bonus avec ddrescue et nbdkit.

Évolutions récentes de PHP : les nouveautés des 15 dernières années

Magazine
Marque
GNU/Linux Magazine
Numéro
238
|
Mois de parution
juin 2020
|
Domaines
Résumé

PHP est un langage qui, comme la plupart des autres langages, évolue continuellement. Nous traitons dans ces pages régulièrement de ces évolutions, mais entre le moment où vous lisez un article ici et le moment où vous pouvez l'utiliser dans vos projets, il se passe souvent des années... Du coup, de nombreuses nouveautés ne sont que très faiblement utilisées, je vous propose donc de les redécouvrir.

Automatiser les tâches de conception de circuits imprimés : greffons pour KiCAD et FreeCAD

Magazine
Marque
GNU/Linux Magazine
Numéro
238
|
Mois de parution
juin 2020
|
Domaines
Résumé

KiCAD et FreeCAD convergent pour fournir un environnement cohérent de conception électronique et mécanique assistée par ordinateur. Ces deux outils rendent leurs fonctions accessibles depuis Python, langage permettant d’automatiser un certain nombre de tâches répétitives et donc fastidieuses. Nous proposons de rédiger quelques greffons (plugins) pour distribuer des vias [1] le long de lignes de transmissions radiofréquences (KiCAD), puis automatiser la réalisation du boîtier contenant un circuit imprimé avec les ouvertures pour ses connecteurs (FreeCAD).

Faciliter la création d’exploits avec DragonFFI : le cas de CVE-2018-0977

Magazine
Marque
MISC
Numéro
109
|
Mois de parution
mai 2020
|
Domaines
Résumé

La recherche de vulnérabilités et la création d’exploits noyaux peuvent impliquer le fuzzing et l’appel des API C exposées par le noyau à l’utilisateur. Il peut ainsi être intéressant de pouvoir écrire un fuzzer d’API avec des langages de plus haut niveau tels que Python, et de pouvoir appeler directement les API à fuzzer depuis cedit langage.

Par le même auteur

Les arbres binaires équilibrés en C

Magazine
Marque
GNU/Linux Magazine
Numéro
235
|
Mois de parution
mars 2020
|
Domaines
Résumé

Nous allons dans cet article revenir sur une structure de données très importante en informatique : les arbres binaires. Après quelques rappels sur l’ordre des algorithmes, les algorithmes de tri, les algorithmes de recherche d’éléments et le rééquilibrage des arbres, nous examinerons le code d’une implémentation en C d’une gestion d’arbres binaires équilibrés.

Tirez parti de la colorisation pour faciliter la lecture de vos données

Magazine
Marque
Linux Pratique
HS n°
Numéro
46
|
Mois de parution
octobre 2019
|
Domaines
Résumé
Dans le numéro 93 de Linux Pratique [1], nous vous avions présenté la commande de colorisation hl (disponible sur GitHub [2]) qui permet de coloriser très simplement des fichiers texte ou résultats de commande. Dans cet article, nous allons étudier les nouvelles fonctionnalités, récemment ajoutées, qui rendent cette commande encore plus puissante.

Gestion de timers en langage C

Magazine
Marque
GNU/Linux Magazine
Numéro
228
|
Mois de parution
juillet 2019
|
Domaines
Résumé
On a parfois besoin de programmer l'exécution d'une tâche dans un programme écrit en langage C, par exemple pour envoyer un signal à un processus qui ne répond pas comme prévu : il existe plusieurs façons de répondre à ce besoin, ainsi que nous allons le voir dans cet article.

Retour d'expérience sur l'étude de la base MNIST pour la reconnaissance de chiffres manuscrits

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
102
|
Mois de parution
mai 2019
|
Domaines
Résumé

Parmi les premières recherches effectuées sur l'Intelligence Artificielle figure la reconnaissance des chiffres manuscrits. La base d'étude utilisée par l'expert en IA Yann Le Cun pour ses travaux, et maintenant devenue une référence, est appelée base MNIST. Nous allons découvrir comment la récupérer, la manipuler et l'étudier.

Implémentation et exploitation de la fonction backtrace() en C

Magazine
Marque
GNU/Linux Magazine
Numéro
223
|
Mois de parution
février 2019
|
Domaines
Résumé
Vous avez créé un binaire (issu d'un source C) que vous avez livré à un client, et, de temps en temps, le programme se plante suite à une violation mémoire. Vous n'avez pas la possibilité de lancer votre programme avec un debugger, ni d'examiner un fichier core pour connaître l'origine du plantage ... La fonction backtrace(), associée à quelques outils, va vous sortir de cette situation embarrassante.