[ mrmko @ 12.01.2006. 16:24 ] @
Kako implementirati dvostrani red DQUEUE pomocu pointera??
Kako da pocnem...svaki savjet mi je dobro dosao:))
[ elmira @ 13.01.2006. 11:36 ] @
Imas u biblioteci na fakultetu Univerzitetsku knjigu -Mostar- (zuta je - ne znam naslov tacno)
Sadrzi dobrih teoretskih objasnjenja pri radu s redovima..., mislim da ce ti moci pomoci pri rjesavanju problema. :)
[ mrmko @ 14.01.2006. 23:14 ] @
dajte ljudi....hitno je...samo par savjeta:)
[ vladab @ 15.01.2006. 12:08 ] @
Prvo, prioritetni ili obican red?
Drugo, mozes da ga napravis pomocu liste. Treba ti pokazivac na pocetak i na kraj reda. Napravis umetanje u red, vadjenje iz reda i to je to. Za detaljnije konslutuj cika GOOGLE-ta, on ce da ti verovatno da i neki kod.
[ mrmko @ 19.01.2006. 21:15 ] @
Evo nasao sam nekakav kod,ali mi javlja greske,a ne mogu nikako da ih ispravim,pa bih molio da mi neko pomogne ,bio bih jako zahvalan…
Unapred HVALA!!:)

#include <stdlib.h>
#include<iostream.h>

struct dqueue
{
dlist head;
dlist tail;
};

dqueue
dq_create(void)
{
dqueue q = malloc(sizeof(struct dqueue));
q -> head = q -> tail = NULL;
return q;
}

int
dq_empty(dqueue q)
{
return q -> head == NULL;
}

void
dq_enq_front(dqueue q, void *element)
{
if(dq_empty(q))
q -> head = q -> tail = dcons(element, NULL, NULL);
else
{
q -> head -> prev = dcons(element, NULL, q -> head);
q -> head -> prev -> next = q -> head;
q -> head = q -> head -> prev;
}
}

void
dq_enq_back(dqueue q, void *element)
{
if(dq_empty(q))
q -> head = q -> tail = dcons(element, NULL, NULL);
else
{
q -> tail -> next = dcons(element, q -> tail, NULL);
q -> tail -> next -> prev = q -> tail;
q -> tail = q -> tail -> next;
}
}

void *
dq_deq_front(dqueue q)
{
assert(!empty(q));
{
dqueue temp = q -> head;
void *element = temp -> element;
q -> head = q -> head -> next;
free(temp);
if(q -> head == NULL)
q -> tail = NULL;
else
q -> head -> prev = NULL;
return element;
}
}

void *
dq_deq_back(dqueue q)
{
assert(!empty(q));
{
dqueue temp = q -> tail;
void *element = temp -> element;
q -> tail = q -> tail -> prev;
free(temp);
if(q -> tail == NULL)
q -> head = NULL;
else
q -> tail -> next = NULL;
return element;
}
}

[ chupcko @ 24.01.2006. 08:31 ] @
Cim cujem hitno, odma pomislim koliko cu para da mu uzmem.

Da si nazubio kod, da si naveo koje greske javlja, pa i da pricamo, ovako nista :).
[ kime1 @ 24.01.2006. 20:05 ] @
Ako imaš algoritam za dvostrani red,lako ćeš odraditi posao (naći greške) ... (ja nemam trenutno)...