ISBN 9782322201839 620 pages FORMAT 17x22 cm Prix Public TTC 39.90 €
 

En librairie

Structures de données avec C#7 et WPF

La programmation des logiciels est très complexe de nos jours et elle ne peut se faire qu’avec beaucoup de pratique. L’apprentissage des concepts par la théorie représente une phase obligatoire. Néanmoins, si ces concepts ne sont pas exploités en pratique, quelque soit le langage informatique employé, la progression en programmation s’en trouve alors fortement ralentie. L’informatique étant à la fois une science, une technologie et un ensemble d’outils, ces trois composantes permettent l’apprentissage de la programmation logicielle.

Les structures de données sont un des piliers fondamentaux sur lesquels repose l’enseignement de l’informatique (notamment en BTS, en DUT et en Licence). Elles modélisent au mieux les informations à traiter pour en faciliter le traitement par l’algorithme considéré. S’il est important d’apprendre et de comprendre les structures de données de façon théorique, il est très important de mettre en oeuvre ces structures de données par des exemples pratiques lors de l’apprentissage de la programmation logicielle. En effet, la pratique apporte souvent une compréhension objective et pragmatique de la théorie acquise. La visualisation d’une notion par un exemple pratique montre très souvent ses points forts et ses faiblesses, obligeant le programmeur à contourner le problème pour arriver à une solution acceptable et performante. C’est la meilleure façon de progresser rapidement et sûrement dans l’apprentissage des notions et concepts.

Dans cet ouvrage, le lecteur apprendra à implémenter les structures de données fondamentales que sont la pile, la file, la liste chaînée, les arbres, les tables et les graphes. L'implémentation récursive sera abordée pour réaliser des fonctions récursives très souvent utilisées dans les structures de données. Il sera vu aussi les méthodes de recherche des données (recherche séquentielle et dichotomique) ainsi que les méthodes pour trier les données (tri par sélection, tri par insertion, tri à bulles, tri Shell et tri rapide).

La fiche n°1 traite la notion de récursivité qui est une notion fondamentale en informatique et très utilisée en programmation pour améliorer la performance des algorithmes quand cela s’avère nécessaire. Certaines notions mathématiques sont des notions récursives comme la notion de factorielle, celle de la puissance de N, la suite de Fibonacci, etc. Le jeu des tours de Hanoï est typiquement un exemple récursif pour sa résolution.

La fiche n°2 traite la structure de données qu’est la pile. Nous verrons son principe (du type dernier entré, premier sorti) et ses primitives de manipulation. La pile est très souvent employée dans les mécanismes de programmation, et notamment dans le traitement des équations qui sont lues à l’écran puis qui sont traitées pour obtenir un calcul numérique.

La fiche n°3 traite la structure de données qu’est la file. Nous verrons son principe (du type premier entré, premier sorti) et ses primitives de manipulation. Le buffer des imprimantes est un des exemples typiques de l’utilisation des files.

La fiche n°4 traite la structure de données qu’est la liste chaînée. Nous verrons son principe et ses primitives de manipulation. Elle est couramment employée dans la résolution des polynômes. La liste chaînée circulaire sera étudiée et mise en application avec le problème de Flavius Josèphe.

La fiche n°5 traite la structure de données qu’est l’arbre. Il s’agit d’une structure arborescente qui permet de représenter l’information organisée de façon hiérarchique. Nous aborderons l’arbre multibranche, l’arbre binaire et l’arbre binaire de recherche.

La fiche n°6 traite les méthodes pour trier et pour rechercher des données, méthodes qui sont importantes en informatique et régulièrement employées. Nous aborderons différentes façons de trier les données avec le tri par sélection, le tri par insertion, le tri à bulles, le tri Shell et le tri rapide. Et nous aborderons la recherche séquentielle et la recherche dichotomique.

La fiche n°7 traite la structure de données qu’est la table. L’implémentation de la table avec ses clés et ses contenus associés est importante. Une application de type dictionnaire sera réalisée pour une mise en situation d’une table. Différentes sortes de tables seront expliquées avec notamment la table de hachage pour la recherche à adressage direct.

La fiche n°8 traite la structure de données qu’est le graphe. Le graphe est une structure très générale dont le but est de représenter des données avec leurs relations. Le graphe est très utilisé dans le domaine de la cartographie pour lequel nous verrons l’implémentation de l’algorithme de Dijkstra pour la recherche du chemin le plus court entre deux positions choisies.

Ressources complémentaires

Consulter le sommaire détaillé du livre => en cliquant ici

Télécharger gratuitement le code source de programmation => en cliquant ici

Disponible dans les librairies en ligne

Chez Amazon France => commander ici

Chez Books On Demand => commander ici