Structures de données avancées : Introduction D. E ZEGOUR Institut National d ’Informatique.

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

Module Systèmes d’exploitation
Structures de données avancées : Principales structures de fichiers
Structures de données avancées : Principales structures de données
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI)
Structures de données avancées : MTH ( Multidimensional trie hashing )
Structures de données avancées : Introduction
Chap. 4 Recherche en Table
D. E ZEGOUR Institut National d ’Informatique
Introduction: Concepts de la programmation
Structures de données et complexité
Structures de données et complexité LIFO – FILO – FIFO – etc…
Au programme du jour …. Un peu plus de structures de données
Introduction à l’Algorithmique
Cours n° 8 Conception et Programmation à Objets
Mémoire & Processus Cours SE - SRC
INTRODUCTION.
Chapitre IV. Structures linéaires (piles, files, listes chaînées)
CPI 2005 Théorie des systèmes d’exploitation
Structures de données linéaires
IPA – Catherine Faron Zucke et Anne Marie Deryr. suite ordonnée d'éléments de taille variable ArrayList liste; liste = new ArrayList (); Ne peuvent contenir.
Introduction à l’algorithmique
II. Chaînage, SDD séquentielles
II. Chaînage, SDD séquentielles
Structures de données IFT-2000
Les fichiers indexés (Les B-arbres)
Structures de données IFT-2000 Abder Alikacem Standard Template library Édition Septembre 2009 Département dinformatique et de génie logiciel.
Structures de données IFT-10541
Présentation Structures de Données et TDA
Stockage Secondaire: Disques
Gestion de Fichiers Tri Interne Efficace et Tri Externe.
1 Survol du Stockage et de lIndexage Chapitres 9-12.


IFT-2000: Structures de données Piles et files Dominic Genest, 2009.
1 Le fichier séquentiel Suite finie déléments dun même type Exemples : – fichier des livres dune bibliothèque – enregistrements sur un magnétophone – ensemble.
326 UMLV Méthodes de classement destinées à de grandes masses de données Applicables à des fichiers séquentiels Complexité : évaluée surtout en nombre.
Structures de données IFT-2000 Abder Alikacem La récursivité Département d’informatique et de génie logiciel Édition Septembre 2009.
Structures de données IFT-2000
Structures de données avancées : Hachage dynamique
O-notation 1. Introduction 2. O-notation 3. Opérations 3.1 Somme 3.2 Produit 4. Règles générales 5. Exemple 6.Analyse des algorithmes récursifs 6.1 Dilatation.
Structures de données avancées : Introduction
INTRODUCTION.
Arbres binaires et tables de hachage
Chaînage et LSC : motivation et principe Manipuler la LSC : exemples Variantes : LDC, liste circulaire, … Etude de cas : réalisation d’un buffer clavier.
II. Chaînage, SDD séquentielles
Structures de données avancées : Fichiers uni-dimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
ETNA – 1ème année Guillaume Belmas –
GF-11: Tri Interne Efficace et Tri Externe
Structures de données avancées : MBT ( Multidimensional B-trees )
Structures de données avancées : Concepts du Multidimensionnel D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
La Gestion des fichiers
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
GF-4: Storage Secondaire: Disques
Structures de données avancées : Variantes des B arbres
1 UMLV  FICHIERS Mémoire de masse découpée en blocs Fichier :liste chaînée de blocs, ou arbre de blocs (répertoires - fichiers)‏ Bloc d’éléments Bloc.
Système de gestion fichiers
Structures de données avancées TH ( Hachage digital ) D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : Principales structures de fichiers
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : MLH (Multidimensional linear hashing) D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : Principales structures de données
Structures de données avancées : Hachage dynamique
Structures de données avancées : MTH ( Multidimensional trie hashing ) D. E ZEGOUR Institut National d ’Informatique.
Architecture et technologie des ordinateurs II
 Chaînage et LSC : motivation et principe Manipuler la LSC : exemples Variantes : LDC, liste circulaire, … Etude de cas : réalisation d’un buffer clavier.
Chaînage et LSC : motivation et principe Manipuler la LSC : exemples Variantes : LDC, liste circulaire, … Etude de cas : réalisation d’un buffer clavier.
Chaînage et LSC : motivation et principe Manipuler la LSC : exemples Variantes : LDC, liste circulaire, …  Etude de cas : réalisation d’un buffer clavier.
Raison d'être de la structure de fichiers : Les premiers travaux : Début des années 1960 : En 1963 : Près de 10 ans plus tard... (à peu près 1973) : Durant.
Transcription de la présentation:

Structures de données avancées : Introduction D. E ZEGOUR Institut National d ’Informatique

Structures de données avancées Plusieurs points de vue  Organisation directe(table d'index ou hash-code) ou organisation d'arbre ( tables d'index hiérarchisées )  Simple attribut, plusieurs attributs  Statique ou dynamique  Préservation de l'ordre ou pas  Local ou distribué

Structures de données avancées Présentation des structures avancées de fichiers  Accès uni-dimensionnel : Hachage, Arbres B ; Hachage Linéaire ( LH ), Hachage digital ( TH )  Accès multi-dimensionnel : MLH, MTH, MBT  Accès distribué : LH*, TH*, RP*

Hachage B Arbres LHTH TH* LH* HI HI* MTHMLHMBT Uni-dim Distribuées Multi-dim RP* 1996

Structures de données avancées Pré-requis  O-notation  Pré-requis 1 : Présentation des structures de données en RAM  Pré-requis 2 : Introduction aux structures de fichiers et présentation des structures de fichiers de base.

O-notation

Structures de données avancées O-notation  Notation universelle pour mesurer des algorithmes dans le cas le plus défavorable.  T(n) est O( f(n) ) Il existe c, n0 > 0,  n > n0 T(n) <= c. f(n)  Exemples O(n2), O( Log2(n) ), O( n1,59),

Structures de données avancées  Cas des algorithmes itératifs existence des règles ( règle du produit, règle de la somme)  Cas des algorithmes récursifs  déterminer l'équation de récurrence  résoudre l'équation. équation différentielle. dilatation de la récursivité. principe de récurrence  Cas des algorithmes à "goto" pratiquement impossible quand le degré de chevauchement est grand

Structures de données en RAM

Structures de données avancées Allocation mémoire  statique : espace alloué avant l'exécution du programme  dynamique : espace alloué pendant l'exécution  mixte : mélange des deux ( cas réel)

Structures de données avancées Structures de données en RAM  Tableau : suite contiguë d'entités  Listes linéaires chaînées : ensemble de maillons alloués dynamiquement chaînés entre eux  Arbres :structure de données hiérarchisée  Graphe : structure plus complexe représentant des relations entre éléments  Hachage : transformer une donnée (par une fonction )en une adresse où sera logée la donnée Les techniques diffèrent par leur MRC (Méthodes de résolution des collisions )

Structures de données avancées  Deux stratégies importantes Les files d'attente : FIFO, Les piles : LIFO  Méthodologie Analyse descendante ( modularité) : découper le problème en sous problèmes, re-découper chaque sous problème, s ’arrêter au niveau de détail le plus bas ==> arborescence  Récursivité : définir un cas trivial, définir un cas général --> l ’algorithme est généralement une alternative Solution récursive plus élégante, solution chère

Structures de données avancées  Modèle ou type de données abstrait : Écrire des algorithmes indépendamment de la représentation mémoire. Donc définition d'une machine abstraite pour chaque structure de données ( Modèle ) avec un ensemble d'opérations  Implémentation Choix d'une représentation mémoire et la traduction des opérations du modèle dans cette représentation  Exemple Pile : créerpile, empiler, depiler, pilevide, pilepleine

Introduction aux structures de fichiers

Structures de données avancées  Introduction. Pourquoi utiliser des mémoires secondaires?. Fichier. Fichier statique, fichier dynamique  Opérations fondamentales sur les fichiers. Fichiers physiques et fichiers logiques. Ouverture, Création et fermeture. Lecture et écriture. Détection de la fin de fichier. L'opération ‘Seek’

Structures de données avancées Organisation des informations sur les disques  Secteur : la plus petite unité de transfert.  clusters :. nombre fixe de secteurs contigus.. lecture sans bouger la tête de lecture/écriture.. L'idéal : avoir des grands clusters.  Étendue : portion du disque contenant des clusters contigus. préférable d'avoir le fichier en une seule étendue.  en général : fichier distribué sur plusieurs étendues.  performances se dégradent quand le nombre d'étendues augmente

Structures de données avancées Organisation des informations sur les disques  Bloc : référence un groupe d'articles qui sont rangés ensemble sur le disque et traités comme une unité d'E/S.  L’idéal : un bloc = un cluster ou n secteurs  fragmentation interne : la taille d'un bloc n'est pas un multiple de la taille d'un article & l'article n'est rangé dans le bloc que si la place est disponible (apparition de "trous" ) article peut être à cheval sur deux bloc & suppressions ultérieures  fragmentation externe : Présence de blocs entièrement vides

Structures de données avancées Organisation des informations sur bandes magnétiques  beaucoup moins importantes que les disques  restent efficace pour les traitements séquentiels

Structures de données avancées Structures des articles - Ensemble de champs formant une même entité - Format fixe ou variable - Chevauchement des articles  Si format variable : - indicateur de longueur ( nombre d'octets ) - délimiteur à la fin de chaque article

Structures de données avancées Méthodes d'accès et organisation de fichier.  Méthode d'accès du fichier : Approche utilisée pour localiser un article dans le fichier.  Organisation du fichier : Comment distinguer un article d'un autre  Structure de fichiers : Méthode d'accès + Organisation du fichier

Structures de données avancées Objectifs  Combiner l'organisation du fichier et la méthode d'accès  Étudier les opérations de base : recherche, insertion, suppression, requête à intervalle sous différentes méthodes d'accès : - les méthodes classiques ( Structures simples, méthodes d’index, méthodes d’arbre, méthode de hachage ) -les nouvelles ( LH, TH, MTH, RP*, …)

Structures de données avancées Critères de mesure d'une structure de fichiers  Taux d'occupation= nombre d’articles / (nombre de blocs * capacité d’un bloc). 70 % : un bon compromis.  Nombre d'accès disque ( viser un accès)  Encombrement et complexité des algorithmes  Réaction de la méthode aux pannes systèmes