亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

隊列的鏈式存儲結構

發布時間:2020-06-28 21:46:02 來源:網絡 閱讀:1166 作者:BarnabyRoss 欄目:編程語言

   由于線性存儲結構有順序存儲和鏈式存儲兩種,而隊列是一種特殊的線性結構,所以,隊列自然也會有鏈式存儲結構,這種存儲結構,稱之為“鏈隊列”。只不過,這種結構需要兩個指針,一個指針指向隊列的頭部,一個指針指向隊列的尾部。雖然隊列采用了鏈式存儲這種方式,但是它本質上仍然是隊列,因此,只要是隊列,就要遵循:只允許在隊列的頭部進行刪除操作,只允許在隊里的尾部進行插入操作。那么,先來定義個鏈隊列結構:

typedef int QElemType;

typedef struct QNode{

    QElemType data;
    struct QNode *next;
}QNode, *QueuePtr;

typedef struct{

    QueuePtr front, rear;
}LinkQueue;

   有了隊列這種結構后,就可以進行隊列元素的插入操作了。

Status EnQueue ( LinkQueue *Q, QElemType e ){

    QueuePtr s = ( QueuePtr ) malloc ( sizeof ( struct QNode ) );
    
    if ( !s )
        exit ( OVERFLOW );
        
    s->data = e;
    s->next = NULL;
    Q->rear->next = s;
    
    Q->rear = s;
    
    return OK;

}

   同樣的,元素的刪除操作。

Status DeQueue ( LinkQueue *Q, QElemType *e ){

    QueuePtr p;
    
    if ( Q->front == Q->rear )
        return ERROR;
        
    p = Q->front->next;
    *e = p->data;
    Q->front->next = p->next;
    
    if ( Q->rear == p )
        Q->rear = Q->front;
        
    free ( p );
    
    return OK;

}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

弋阳县| 十堰市| 芜湖市| 台前县| 安庆市| 北辰区| 琼海市| 扎兰屯市| 陇川县| 英德市| 霸州市| 郑州市| 哈巴河县| 杭锦后旗| 永城市| 社旗县| 重庆市| 宁河县| 通辽市| 四子王旗| 塘沽区| 黑山县| 云林县| 承德市| 那曲县| 尼木县| 津市市| 盖州市| 青海省| 招远市| 博客| 南阳市| 景宁| 衡东县| 陵川县| 五华县| 教育| 郯城县| 师宗县| 涿州市| 明光市|