IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Les vecteurs creux


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut Les vecteurs creux
    salut,
    Qui peut m'aider à comprendre le fonctionnement des Vecteur creux .
    J'ai cherché sur google pour comprendre ce sujet mais je n'ai rien trouvé .
    Voilà le sujet :
    1er partie :



    2eme partie :



    Merci d'avance .
    Images attachées Images attachées   

  2. #2
    Membre Expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Par défaut
    Salut,

    il me semble en fait que ce soit le but de l'exercie

    Dans ton exercice, on part d'un très grand vecteur qui en fait contient beaucoup de 0 et quelques valeurs non nulles éparses. Le but d'un vecteur est d'associer un index et une valeur, on veut pouvoir accéder à la valeur en position 0, 4, ou n.
    On constate que beaucoup de ces valeurs sont nulles et on se pose la question "est-il possible de ne stocker que les valeurs non nulles et garder les mêmes fonctionnalités en utilisant moins de mémoire ?"
    La réponse est oui, il suffit de garder l'indice où se trouve une valeur non nulle et cette valeur.
    Si on met dans un tableau ce couple (indice, valeur) on obtient le VEC_COMP de ton exercice. Si on utilise une liste chaînée on obtient le VEC_LIST de ton exercice.

  3. #3
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut
    Merci pour votre indication ;
    voila j'ai deja commencé le programme qui suprimme tout les zeros qui sont dans un tableau .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    int suprrim_zero(int *tab) {
        int i = 0, j = 0;
        int *tmp=tab;
        while (*(tab + i)!=NULL) {
            if (*(tab + i) != 0) {
                *(tmp + j++) = *(tab + i);
            }
     i++;
        }
        return ?; /* Est-ce que je dois retourner tab ou quoi */
    }

  4. #4
    Membre Expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Par défaut
    Bon, il ne s'agit pas supprimer de les 0. Il s'agit déjà de définir les 3 type de la question 2.1, as-tu fait cela ?

  5. #5
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut
    Citation Envoyé par kwariz Voir le message
    Bon, il ne s'agit pas supprimer de les 0. Il s'agit déjà de définir les 3 type de la question 2.1, as-tu fait cela ?
    pardon mais j'ai pas bien compris ce truc .

  6. #6
    Membre Expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Par défaut
    Tu as trois structures différentes : VECTEUR, VEC_COMP et VEC_LIST.
    Tu va devoir définir ces types, les fonctions pour les manipuler pour finalement pouvoir transformer un VECTEUR en VEC_COMP ou en VEC_LIST, en aucun cas il n'est demandé de supprimer les 0 de VECTEUR.
    Donc avant de coder quoi que ce soit il faut déjà que tu définisses ces types = la question 2.1.1.

  7. #7
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 481
    Par défaut
    J'ajoute que, dans ton énoncé, « vecteur creux » doit se comprendre de la même manière que « matrice creuse », par exemple : c'est un vecteur tout-à-fait ordinaire mais qui contient majoritairement des zéros (qui sont généralement eux-mêmes des valeurs par défaut pour des termes non spécifiés).

    Il n'est pas précisé à partir de tel taux de zéros, par rapport au reste, un vecteur est considéré comme creux. On utilisera simplement ce terme lorsqu'un objet mathématique contient suffisamment de zéros par rapport au reste pour qu'il devienne pertinent de faire un traitement particulier.

Discussions similaires

  1. Les vecteurs creux
    Par trylam dans le forum Caml
    Réponses: 2
    Dernier message: 16/06/2012, 19h20
  2. Probleme avec les vecteurs.
    Par Fred2209 dans le forum C++
    Réponses: 5
    Dernier message: 13/11/2006, 18h06
  3. travailler avec les images et les vecteurs
    Par susimido dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 24/04/2006, 15h02
  4. [Swing]remplissage d'un JTable avec les vecteur
    Par 3adoula dans le forum Composants
    Réponses: 7
    Dernier message: 15/06/2004, 16h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo