針對有序列表的操作

2021-10-10 22:55:08 字數 985 閱讀 6160

在有序列表的 n 個前驅中,找到不大於 e 的最後乙個元素

template

<

typename t>

posi

(t) list

::search

(t const

& e,

int n,

posi

(t) p)

const

// n 可以 等於 0

//從 後向前找 不大於

複雜度分析:

最壞情況 o(n),不像向量可以在常數時間內找到

向量是 ram 模型,而列表是 tm 模型,需要步驟

template

<

typename t>

int list

::uniquify()

{if(_size <2)

return

;int oldsize = _size;

listnodeposi

(t) p =

first()

;//定義 p,q型別

listnodeposi

(t) q;

while

(trailer != p-

>succ)

q = p-

>succ;

if(p-

>data == q-

>data)

remove

(q);

else

p = q;

return oldsize - _size;

//總算有寫的差不多了一次23333

//要記得無需比較的特殊情況

//remove()是常數時間,所以時間複雜度 o(n)

有序列表並沒有很多筆記,於是就愉快的水了一篇,嘿嘿嘿

有序列表 無序列表 巢狀列表

無序列表 有序列表 coffee teamilk coffee teamilk 不同型別的有序列表 編號列表 bananas lemons oranges 大寫字母列表 bananas lemons oranges 小寫字母列表 bananas lemons oranges 羅馬數字列表 banan...

針對有頭結點的鍊錶進行排序

1.插入排序 需要用兩個指針對鍊錶進行遍歷,乙個指標用於標記待插入的節點 外迴圈 另乙個指標用於尋找插入位置 內迴圈 因為需要進行節點的刪除與插入,因此對用於遍歷的兩個指標,還需要再新增兩個前驅指標。node insertsortlist node l return l 2.氣泡排序 比較相鄰節點,...

HTML無序列表 有序列表 定義列表

一 無序列表 ordered list 各個列表專案之間沒有順序,是並列的 type屬性用於設定列表樣式,預設是小圓點 disc circle空心圓圈 square小方塊 通過list style none可以取消 二 有序列表 ordered list type 預設是1,表示專案列表用數字1,2...