順序表介面的實現

2021-09-27 03:47:06 字數 1291 閱讀 1215

typedef int sldatatype;

typedef struct seqlistseqlist;

#include "list.h"

//初始化

void seqlistinit(seqlist* psl, size_t capacity)

//銷毀

void seqlistdestory(seqlist* psl)

}//檢查容量

void checkcapacity(seqlist* psl)

}//尾插

void seqlistpushback(seqlist* psl, sldatatype x)

//尾刪

void seqlistpopback(seqlist* psl)

}//頭插

void seqlistpushfront(seqlist* psl, sldatatype x)

//頭刪

void seqlistpopfront(seqlist* psl)

//查詢

int seqlistfind(seqlist* psl, sldatatype x)

} return -1;

}//指定位置插入

void seqlistinsert(seqlist* psl, size_t pos, sldatatype x)

//檢查容量

checkcapacity(psl);

size_t i = 0;

//考慮size_t--;值為正的情況

for (i = psl->size; i > pos; i--)

psl->data[pos] = x;

psl->size++;

}//指定位置刪除

void seqlisterase(seqlist* psl, size_t pos)

size_t i = 0;

for (i = pos; i < psl->size; i++)

psl->size--;

}//指定值刪除

void seqlistremove(seqlist* psl, sldatatype x) }}

//指定位置修改

void seqlistmodify(seqlist* psl, size_t pos, sldatatype x)

psl->data[pos] = x;

}//列印

void seqlistprint(seqlist* psl)

}

動態順序表部分介面的簡單實現

我們的動態順序表指的依舊是能動態開闢記憶體,需要用多少記憶體就開闢多少,從而合理的利用記憶體資源。seqlist d.h ifndef seqlist d h define seqlist d h include include include include define sz 2 初始化記憶體的...

資料結構 順序表及其各個介面的實現

在聊順序表之前,我們先來說一下線性表。什麼是線性表呢?線性表是n個具有相同特性的資料元素的有限序列。線性表是一種在實際中廣泛使用的資料結構,常見的線性表有 順序表,鍊錶,棧,佇列,字串.線性表在邏輯上是線性結構,也就是說是連續的一條直線。但在物理結構上並不一定是連續的,線性表在物理上儲存時,通常是以...

介面的實現

1 介面的實現 class 類名 implements 介面1,介面2,介面3 方法1 方法2 介面實現的注意事項 1 為介面中所有的方法提供具體的實現。2 必須遵守重寫的所有規則。重寫的規則 1 子類的重寫方法不能丟擲更大的異常 2 子類的重寫方法不能有更小的訪問範圍 父類 public void...