線性表之順序表

2021-08-24 23:44:28 字數 1210 閱讀 6412

裡面有個隱患,就是使用了靜態陣列存放順序表。實際中,必須用動態陣列。 

//

// main.m

// sequrencelist順序表是由靜態陣列實現的

////

#import #define listsize 10

typedef int elementtype;

//用結構體表示乙個順序表

struct sequrencelist ;

void init(struct sequrencelist *list)

list->length = 0;

}bool insert(struct sequrencelist *list, int i, elementtype value)

//判斷插入位置是否正確,[0, lenght]包含的位置均可插入

if (i < 0 || i > list->length)

//將從插入位置i開始到最後的所有元素,向後移動。

for (int j = list->length; j > i; j--)

//為插入位置i的元素賦值

list->element[i] = value;

list->length = list->length + 1;

return true;

}bool removeelement(struct sequrencelist *list, int i)

for (int j = i; j < list->length - 1; j++)

list->length = list->length - 1;

return true;

}bool modify(struct sequrencelist *list, int i, elementtype value)

list->element[i] = value;

return true;

}int indexbyvalue(struct sequrencelist *list, elementtype value)

}return -1;

}elementtype* find(struct sequrencelist *list, int i)

return &list->element[i];

}int main(int argc, const char * argv)

線性表之順序表

資料結構草草學過,不過沒有認真運用過。雖然知道一些最為基本的抽象型別及一些常用操作,不過叫我把這些基本的演算法寫出來我也 是寫不出來的。因為常說資料結構 演算法是乙個程式設計師最基本的素質,所以這次認真加以複習。在複習的同時我盡量將自己學習的其他的 一些基本知識比如c 中的物件導向思想也引入進來,同...

線性表之順序表

線性表 我們都知道是一種常用的資料結構,也是歷來各種考試的重點。今天抽了一些時間把線性表做了總結。線性表是n個資料元素的乙個有限序列。用公式表示為 l a1,a2,a3,a4,an 因為線性表是乙個有限的序列,所以也如上面公式所示,它的各個元素是相繼排放的。那麼它的每個相連的兩項之間都是有乙個邏輯關...

線性表之順序表

線性表的操作 initlist l 初始化操作,建立乙個空的線性表l。listempty l 判斷線性表是否為空表,空返回true,否則返回false。clearlist l 將線性表清空。getelem l,i,e 將線性表l中的第i個位置元素值返回給e。listdelete l,i,e 刪除線性...