iT邦幫忙

2026 iThome 鐵人賽

DAY 20
0
佛心分享-IT 人自學之術

菜雞學習資料結構的 30 日讀書分享系列 第 20 篇

菜雞學習資料結構的 30 日讀書分享【Day 20】

  • 分享至 

  • xImage
  •  

循序儲存結構的插入與刪除

獲得元素操作

對線性串列的循序儲存結構來說,如果要實現 GetElem 的操作,即將線性串列 L 中的第 i 個位置元素值傳回,其實是非常簡單的。

就程式而言,只要 i 的數值在陣列索引範圍內,就是把陣列第 i-1 索引的值傳回即可。

#define OK 1
#define ERROR 0
/* Status 是函數的型態,其值是函數結果狀態碼,如 OK 等 */
typeof in t Stauts;

/* 起始條件: 循序線性串列 L 已存在, 1 <= i <= ListLength(L) */
/* 操作結果: 用 e 傳回 L 中第 i 個資料元素的值,住一 i 是指位置,第 1 個位置的陣列是從 0 開始 */
Status GetElem(SqList L,int i,ElemType *e)
{
    if(L.length == 0 || i < 1 || i > L.length)
        return ERROR;
    *e = L.data[i - 1];
    
    return OK;
}

換句話說,只要確認位置合法,想在循序線性串列中取得第 i 個元素,直接對應陣列索引減 1 就能輕鬆拿到了。

今日的分享就到這囉,我們明天見,掰掰!


上一篇
菜雞學習資料結構的 30 日讀書分享【Day 19】
下一篇
菜雞學習資料結構的 30 日讀書分享【Day 21】
系列文
菜雞學習資料結構的 30 日讀書分享 共 25 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言