二. 順序表
三. python 列表(list)
注:字典型別是python中最常用的資料型別之一,它是乙個鍵值對的集合,字典通過鍵來索引,關聯到相對的值,理論上它的查詢複雜度是 o(1)
缺點:
特點:
順序表增刪改查原理:
# 1、順序表的初始化
順序表的初始化就是把順序表 初始化為空的順序表;只需把順序表的長度length置為0即可;
# 2、求順序表的長度
順序表的長度就是就順序表中的元素的個數,由於在插入和刪除操作中都有對資料表的長度進行修改,所以求表長只需返回length的值即可;
# 3、按序號查詢
查詢順序表中第i個元素的值(按序號查詢),如果找到,將將該元素值賦給e。
查詢第i個元素的值時,首先要判斷查詢的序號是否合法,如果合法,返回第i個元素對應的值。
# 4、插入元素
在資料表的第i個位置插入元素,在順序表的第i個位置插入元素e
首先將順序表第i個位置的元素依次向後移動乙個位置,然後將元素e插入第i個位置,移動元素要從後往前移動元素,
即:先移動最後乙個元素,在移動倒數第二個元素,依次類推;
插入元素之前要判斷插入的位置是否合法,順序表是否已滿,在插入元素之後要將表長l-
>length++;
# 5、刪除操作
刪除表中的第i個元素e,刪除資料表中的第i個元素,需要將表中第i個元素之後的元素依次向前移動一位,將前面的元素覆蓋掉。
移動元素時要想將第i+
1個元素移動到第i個位置,在將第i+
2個元素移動i+
1的位置,直到將最後乙個元素移動到它的前乙個位置。
進行刪除操作之前要判斷順序表是否為空,刪除元素之後,將表長l-
>length--;
# 6、按內容查詢
查詢資料元素e在表中的位置,可以從表頭開始一直遍歷表中元素。
如果找到與要查詢元素e相等的元素,則返回元素在表中的位置,陣列下標從0開始。
則元素在表中對應的位置序號值應為對應陣列下標加1,沒有找到則返回0。
# 7、頭插
頭插,即在表頭插入元素e,在表頭插入元素,需要將表中的元素依次後移一位,
然後將要插入的元素e賦給數字的首元素,執行插入操作後將表長l-
>length++;
需要注意的是移動元素要從順序表的最後乙個元素開始移動,
如果從第1個元素開始移動,會使得第1個元素的值覆蓋第2個元素的值,然後把第二個元素後移則會使第2個元素的值
(原來第1個元素值)覆蓋第3個元素的值,依次類推,最後出插入元素外,其餘元素值均為原順序表中第乙個元素的值。
# 8、頭刪
刪除順序表中的第乙個元素,只要將順序表中的元素從第2個開始,依次向前移動1位,覆蓋原來順序表中元素對應位置的前乙個值
在刪除元素之前要判斷順序表是否為空,刪除順序表元素之後將順序表長度l-
>length--;
# 9、尾插
在順序表表尾插入元素e,l-
>data[l-
>length]
= e;將元素e的值賦給順序表中最後乙個元素的下乙個元素;
尾插操作,需要判斷順序表是否已滿,尾插後將順序表長度l-
>length++;
# 10、尾刪
刪除表尾元素,只需將順序表的長度減1
,類似於出棧操作,棧頂指標top –。
# 11、清空順序表
清空順序表就是將表中的元素刪除。刪除表中的元素只需將表的長度置為0。
# 12、判斷表是否為空
如果順序表的長度為0,則順序表為空,返回1,否則,返回0;
# 13、列印表中元素
依次列印順序表中的元素,如果順序表為空則輸出提示。
c 陣列 陣列列表 列表 foreach
就是多個型別相同的變數,連續地放在記憶體中。c 中陣列宣告為 int a a new int length 與c 的int a length 不同。static void main string args 申請陣列空間並對陣列設定初始值,放在大括號中。a new int 5 陣列宣告之後,可以分配任...
python中的列表,列表的特性
列表中可以存放任意型別的資料 li 1,2,3,5,6,8 li 1,2,3,1,2,3,4 5,7 eg 將0 9這10個數字隨機列表 注 shuffle 方法將序列的所有元素隨機排序。print service 1 列表的反轉 print service 1 除了第乙個之外的其他元素 print...
python整數和列表 列表和整數Python
假設實際縮排如下 specialnum 10 def number move move number for elements in range len move number if specialnum move number 1 x move number.index specialnum y ...