我試圖創建一個priority queue
使用隊列數組,每個數組的索引是一個優先級。我嘗試以下溶液,優先級隊列C
隊列數據類型包含數組LLIST,
Queue *q_create(int size)
{
struct queue *p;
struct q_head *h;
int i;
if ((p = (struct queue *)malloc(sizeof(struct queue))) != NULL) {
p->size = size;
for (i = 0; i < PRIODIFF; i++) {
h = &(p->llist[i]);
h->head = NULL;
h->tail = NULL;
}
}
return p;
}
我感到困惑由線:h = &(p->llist[i]);
我想,llist[i] = h
。 這是用C編寫它的另一種方式嗎?我正在讀它作爲h = the address of llist[i]
。 這是正確的嗎?
感謝