list介面實現

2021-09-02 16:23:38 字數 2088 閱讀 5808

//模擬實現list容器

namespace list

listnode* _ppre;

listnode* _pnext;

t _val;

}; templateclass listiterator

listiterator(const self& l)

: _pnode(l._pnode)

{}t& operator*()

t& operator->()

self& operator++()

self& operator++(int)

bool operator==(const self& l)

bool operator!=(const self& l)

pnode _pnode;

}; //反向迭代器

templateclass listreverseiterator

listreverseiterator(const self& s)

: _it(s._it)

{}ref operator*()

ptr operator->()

//反向迭代器的++就是正向迭代器的--;相反,方向迭代器的--就是正向迭代器的++

self& operator++()

self& operator++(int)

self& operator--()

self& operator--(int)

bool operator!=(const self& s)

bool operator==(const self& s)

private:

iterator _it;

}; templateclass list

public:

list()

list(int n, const t& value = t())

}templatelist(iterator first, iterator last)

}//拷貝建構函式

list(const list& l)

list& operator=(const list& l)

return *this;

} ~list()

iterator begin();

iterator end()

constiterator cbegin() const

constiterator cend() const

reverseiterator rbegin()

reverseiterator rend()

constreverseiterator crbegin() const

constreverseiterator crend() const

size_t size() const

return count;

} bool empty() const

void resize(size_t newsize; const t& val = t())

else

for(size_t i = newsize; i < oldsize; ++i)

popback();

} //list access

t& front()

const t& front()const

t& back()

const t& back()const

void pushback(const t& val)

void popback()

}void pushfront(const t& val)

void popfront()

}//在pos位置前插入值為val的節點

iterator insert(iterator pos, const t& val)

iterator erase(iterator pos)

void clear()

_phead->_pnext = _phead;

_phead->_ppre = _phead;

} void swap(list& l)

};}

Java實現List介面

list概述及特點 元素有序,並且每乙個元素都存在乙個索引.元素可以重複.list集合的特有功能概述 void add int index,e element 在指定索引處新增元素 e remove int index 移除指定索引處的元素 返回的是移除的元素 e get int index 獲取指...

集合 List介面及實現類

list部分思維導圖 list介面是乙個有序的 collection,list介面能夠精確的控制每個元素插入的位置,能夠通過索引 元素在list中位置,類似於陣列的下標 來訪問list中的元素,第乙個元素的索引為 0,而且允許有相同的元素。特點 list 介面儲存一組不唯一,有序 插入順序 的物件。...

List介面分析

list介面是繼承自collection介面的,有關collection介面 list是一種有序的collection,可以通過索引訪問集合中的資料,看看list中 有哪些方法 1.int size 從collection中繼承 2 boolean isempty 從collection中繼承 3....