revisionInf3105.docx - Lvaluation dun algorithme est...

This preview shows page 1 - 2 out of 29 pages.

L’évaluation d’un algorithme est essentiellement réalisée à l’aide de deux mesures : • la complexité temporelle mesure le temps de calcul (temps réel ou temps CPU) requis ; • la complexité spatiale mesure la quantité de mémoire requise. Dans un arbre binaire de recherche non équilibré , » Toutes les opérations dégénèrent en temps O(n). L’insertion et la suppression sont en pratique plus rapides dans un arbre rouge-noir que dans un arbre AVL. Bien qu’elles soient du même ordre de grandeur, les insertions/suppressions dans les arbres r-n demandent généralement (en pratique) moins de réorganisations que dans les arbres AVL. La recherche est en pratique plus rapide dans un arbre rouge-noir que dans un arbre AVL : Faux » Hauteur maximale d’un arbre AVL : 1.44logn−0.328 ; rouge-noir : 2logn. Donc, l’arbre AVL est généralement moins haut en pratique, donc plus rapide pour les recherches. La copie d’un arbre binaire de recherche se fait en temps d’au moins O(nlogn ) : Faux La raison est qu’on doit inévitablement faire n insertions, chacune coûtant O(logn). » Il est possible de copier un arbre en temps linéaire en recopiant sa structure exacte. 8 Pointeurs et références Un pointeur et une référence désignent l’adresse d’un bloc en mémoire statique ou dynamique. Une variable pointeur (ou tout simplement un pointeur) contient l’adresse d’un bloc mémoire. Ces variables permettent, entre autres, de pouvoir réserver de l’espace mémoire lors de l’exécution d’un programme. La forme générale de la déclaration d’une variable pointeur est type * nom-variable-pointeur. Voici une série d’instructions en guise d’exemples, suivies de schémas explicatifs. int a = 99; déclaration de a et assignation de son contenu à 99 char c = ’A’; déclaration de c et assignation de son contenu à ’A’ (65) int tab[3]; déclaration du tableau tab, de longueur 3 int * p; déclaration de p qui contiendra l’adresse d’un entier int * q; déclaration de q qui contiendra l’adresse d’un entier p = new int; adresse d’un bloc mémoire réservé pour un int, donnée à p q = new int(209); adresse d’un bloc mémoire réservé pour un int, donnée à q et contenu du bloc à 209 int * r; déclaration de r qui contiendra l’adresse d’un entier r = &a; r contient l’adresse de la variable a * p = 17; contenu du bloc mémoire pointé par p contiendra 17 * r = a + ( * q ); contenu du bloc mémoire pointé par r contiendra la somme de la valeur de a et du contenu du bloc mémoire pointé par q int x = 1, y, z, t; x *= y + 1; /* équivaut à x = x * (y + 1) */Incrémentation / Décrémentation : ++ / int x = 1, y, z ; y = x++ ; /* y = 1, x = 2 : post-incrémentation */ z = ++x ; /* z = 3, x = 3 : pré-incrémentation */ Nécessitent une expression spécifiant une zone de stockage à gauche (y+1) *= x ; /* INVALIDE */ void test(int a, int* b, int* c, int& d, int*& e){ a=11; // effet local b++; // change l’adresse locale de b *c=13; // change la valeur pointee par c
Image of page 1

Subscribe to view the full document.

d=14; // change la valeur referee par d e=c; // change la valeur du pointeur (adresse) pour celle de c.
Image of page 2
You've reached the end of this preview.
  • Spring '09
  • francois

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern