Actualité informatique
Test comparatif matériel informatique
Jeux vidéo
Astuces informatique
Vidéo
Télécharger
Services en ligne
Forum informatique
01Business

|-  LOGICIELS


|||-  

problème algo d'ordonnancement : casse tete

 

1 utilisateur anonyme
Ajouter une réponse
 

 
Page photos
 
     
Vider la liste des messages à citer
 
 Page :
1
Auteur
 Sujet :

problème algo d'ordonnancement : casse tete

Prévenir les modérateurs en cas d'abus 
mikilax
mikilax
  1. Posté le 10/06/2004 à 18:38:06  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Bonjour,  
 
 J'essaie de resoudre un problème qui me cause pas mal de soucis..il s'agit d'un problème de planification. Concretement voici le problème :  
 - j'ai une liste doublement chainée composée d'elements de  
 la forme  STRUCT Element {  string nomElem;

int debut;

int duree;

}  
 Ces elements sont classés par ordre croissant dans la liste (par "debut" ) (ordonnancement). On me fourni ensuite un ensemble d'elements  avec une deadline pour  l'ensemble de ces elements et je dois les inserer dans la liste. Noter ici que les nouveaux elements peuvent s'inserer n'importe en respectant le deadline (en debut,milieu,fin de la liste). Etant donné que les elements doivent etre classés par ordre croissant, il faut prevoir le cas ou on soit obligé de trouver un "trou" entre 2 elements ou de decaler des elements existants pour avoir assez de place pour inserer l'element qui arrive. Le hic,c'est que lorsqu'on arrive pas à inserer TOUS les nouveaux elements,il faut stoper l'operation et remettre la liste dans l'etat initial (suppression des nouveaux elements supprimés). Bien sur ,entre temps,il y'a eu certainement des operations de decalage et la suppression pure et simple des nouveaux elements ne peut pas remettre  la liste dans l'etat initial......  
 Quelqu'un aurait il une idée pour gerer cette situation ??  
 
 Merci à tous..  

skyman
Assidu (de 10 000 à 19 999 messages postés)
  1. Posté le 14/06/2004 à 20:02:17  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
T'utilises une liste chaînée pour faire cela ?

(Publicité)
mikilax
  1. Posté le 15/06/2004 à 19:27:07  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
oué,une liste doublement chainée..

skyman
Assidu (de 10 000 à 19 999 messages postés)
  1. Posté le 15/06/2004 à 20:20:51  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 

mikilax a écrit :

oué,une liste doublement chainée..
 



 
 Tu fais une recopie de la premiere chaine sur une seconde chaine. Cette seconde chaine, tu la modifie comme tu le souhaites, et tu aura toujours la premiere d'origine.
 
 En revanche, si tu utilises une liste chainée, je ne vois pas comment tu peux avoir un "trou" entre deux éléments. :??:

slag
Sur la bonne voie (de 100 à 499 messages postés)
  1. Posté le 03/07/2004 à 00:45:39  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 
Juste une question : Une liste chainé, il faut pas une variable " suivant " ou tu enregistre l'adresse du maillon suivant ? Et pour une liste doublement chainées, une 2eme variable " precedent " pour enregistrer l'adresse des maillons precedents ...
 
 C'est plus simple, quand tu inseres, tu modifies les adresses, et en principes, problème résolu ! Non ?

(Publicité)
skyman
Assidu (de 10 000 à 19 999 messages postés)
  1. Posté le 03/07/2004 à 09:45:06  
  1. answer
  1. Prévenir les modérateurs en cas d'abus
 

SlaG a écrit :

Juste une question : Une liste chainé, il faut pas une variable " suivant " ou tu enregistre l'adresse du maillon suivant ? Et pour une liste doublement chainées, une 2eme variable " precedent " pour enregistrer l'adresse des maillons precedents ...
 
 C'est plus simple, quand tu inseres, tu modifies les adresses, et en principes, problème résolu ! Non ?
 



 
 Oui dans ta structure composant ta liste chainée, il faut que tu la declares comme ca (me souviens plus de la syntaxe exacte par contre) :
 
 

Code :(Double-cliquez pour supprimer les numéros de ligne)
  1. struct liste_chainee{
  2.  
  3.     int i;   //tu peux faire autant de declarations de variables que tu veux, elles composeront ta structure
  4.  
  5.     liste_chainee* suiv;  //pointe vers la structure liste_chainée
  6.  
  7.     liste_chainee* prec; //pointe vers la structure liste_chainee
  8.  
  9. }liste_chainee;

 
 A partir de la, tu peux utiliser cette structure pour avoir une liste doublement chainée. ;)

 Page :
1

Aller à :
 

Sujets relatifs
Problème eurosport player sur pc probléme de curseur dans photoshop
probleme de musique sur diaporama open office Probleme DD exFAT a FAT32
Cd de Windows cassé Gros problème : Operating system not found !
Solutions pour plus se prendre la tête !!!  
Plus de sujets relatifs à : problème algo d'ordonnancement : casse tete

Les 5 sujets de discussion précédents Nombre de réponses Dernier message
Outils de création de sites 5
récupération de touts les fichiers dans un exe 5
site perso pirater.... 3
quel language choisir pour créer des petits jeux videos 11
je veux métrzé le javascript 1