學習C 資料結構之線性表

2021-08-21 18:34:33 字數 2625 閱讀 9592

什麼是線性表

線性表是最簡單、最基本、最常用的資料結構。線性表是線性結構的抽象(abstract),線性結構的特點是結構中的資料元素之間存在一對一的線性關係。這種一對一的關係指的是資料元素之間的位置關係,即:( 1)除第乙個位置的資料元素外,其它資料元素位置的前面都只有乙個資料元素;( 2)除最後乙個位置的資料元素外,其它資料元素位置的後面都只有乙個元素。也就是說,資料元素是乙個接乙個的排列。因此,可以把線性表想象為一種資料元素序列的資料結構。

線性表就是位置有先後關係,乙個接著乙個排列的資料結構。

自己定義乙個線性表介面

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace _001_線性表

t getele(int index);

int locate(t value);

}}

建立乙個類繼承介面

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace _001_線性表

public seqlist():this(10)//預設建構函式 容量是10

public t this[int index]

}public void add(t item)

else

}public void clear()

public t delete(int index)

else

}public int getlength()//取得資料的個數

public void insert(t item, int index)

data[index] = item;

count++;

}public bool isempty()

public int locate(t value)

}return -1;}}

}

乙個簡單的例項

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace _001_線性表

public node(t value)

public node(t data,nodenext)

public node(nodenext)

public t data

set

}public nodenext

set }}

}

linklist.cs

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace _001_線性表

public t this[int index]

return temp.data;}}

public void add(t item)

else

else

}temp.next = newnode;}}

public void clear()

public t delete(int index)

else

nodeprenode = temp;

nodecurrentnode = temp.next;

data = currentnode.data;

nodenextnode = currentnode.next;

prenode.next = nextnode;

}return data;

}public t getele(int index)

public int getlength()

else

}return count;

}public void insert(t item, int index)

else

nodeprenode = temp;

nodecurrentnode = temp.next;

prenode.next = newnode;

newnode.next = currentnode;}}

public bool isempty()

public int locate(t value)

else

else

else}}

return -1;}}

}}

學習資料結構之線性表

實現了線性表的獲得元素,插入,刪除,統計元素的功能。如下,初學者,學習罷了。1 include2 define maxsize 20 3 typedef int elemtype 定義基本型別,視具體情況而定 4 5 typedef int status 6 define ok 1 7 define...

資料結構之線性表(C)

1 預定義狀態碼 define true1 define false0 defineok1 define error0 define infeasible 1 define overflow 2 2 預定義常量 define list init size 100 線性表容量 define listi...

mysql 線性表 資料結構之線性表

概要 參考 大話資料結構 把常用的基本資料結構梳理一下。線性表定義 線性表 list 零個或多個資料元素的有限序列。若將線性表記為 a 1,cdots,a a i,a cdots,a n 則表中 a 領先於 a i a i 領先於 a 稱 a 是 a i 的直接前驅元素,a 是 a i 的直接後繼元...