線性資料結構

2021-09-17 03:30:58 字數 1236 閱讀 2823

 乙個佇列,乙個排列整齊的隊伍

 列表內的個體稱作元素,由若干元素組成列表

 元素可以是任意物件(數字、字串、物件、列表等)

 列表內元素有順序,可以使用索引

 線性的資料結構

 使用 [ ] 表示

 列表是可變的

 列表list、鍊錶、 queue、 stack的差異

 list() -> new empty list

 list(iterable) -> new list initialized from iterable』s items

 列表不能一開始就定義大小

lst = list()

lst =

lst = [2, 6, 9, 『ab』]

lst = list(range(5))

 索引,也叫下標

 正索引:從左至右,從0開始,為列表中每乙個元素編號

 負索引:從右至左,從-1開始

 正負索引不可以超界,否則引發異常indexerror

 為了理解方便,可以認為列表是從左至右排列的,左邊是頭部,右邊是尾部,

左邊是下界,右邊是上界

 列表通過索引訪問

 list[index] , index就是索引,使用中括號訪問

insert(index, object) -> none

 在指定的索引index處插入元素object

 返回none就意味著沒有新的列表產生,就地修改

 時間複雜度是o(n)

 索引能超上下界嗎?

 超越上界,尾部追加

 超越下界,頭部追加

 random模組

 randint(a, b) 返回[a, b]之間的整數

 choice(seq) 從非空序列的元素中隨機挑選乙個元素,比如random.choice(range(10)),

從0到9中隨機挑選乙個整數。 random.choice([1,3,5,7])

 randrange ([start,] stop [,step]) 從指定範圍內,按指定基數遞增的集合中獲取乙個

隨機數,基數預設值為1。 random.randrange(1,7,2)

 random.shuffle(list) ->none 就地打亂列表元素

 sample(population, k) 從樣本空間或總體(序列或者集合型別)中隨機取出k個不同的元

素,返回乙個新的列表

資料結構 線性結構

typedef int position typedef struct lnode list struct lnode 初始化 list makeempty 查詢 define error 1 position find list l,elementtype x 插入 bool insert lis...

資料結構 線性結構

線性表基本操作有 1 list makeempty 初始化乙個新的線性表 2 elementtype findkth list l,int i 根據指定的位序i,返回l中相應元素ai i是下標 3 position find list l,elementtype x 已知x,返回線性表l中與x相同的...

線性資料結構

一般將資料結構分為兩在類 線性資料結構和非線性資料結構。線性資料結構有線性表 棧 佇列 串 陣列和檔案 非線性資料結構有樹和圖。線性表 一 arraylist 1 arraylist底層採用陣列實現,當使用不帶引數的構造方法生成arraylist物件時,實際上會在底層生成長度為10的object型別...