雖然大部分是模仿的,但是總算是用了兩個小時把這個作業弄完了。第一次寫迭代器和template。迭代器嗎~基本就是乙個型別,把++ == != * ->過載一下就搞定了。
有表頭鍊錶
1template
<
class
t>
2struct
__head_list_node
9__head_list_node(
constt&
t)13
};14
template
<
class
t, class
ref,
class
ptr>
15struct
__head_list_iterator
25__head_list_iterator(node
*x) : itx(x) {}
26__head_list_iterator(const_iterator
&x) : itx(x.itx) {}
2728
bool
operator==(
const
__head_list_iterator
&x)
29bool
operator!=(
const
__head_list_iterator
&x)
3031
ref
operator
*()
32ptr
operator
->
() 33
34self
&operator
++()
38const
self
operator++(
int)
44};
45template
<
class
t>
46class
__head_list63~
__head_list()
6667
iterator begin()
70iterator end()
73const_iterator begin()
const
76const_iterator end()
const
7980
size_t size()
const
83bool
empty()
const
8687
node
*getprevious(node *q)
92void
constt&
t)102
iterator insert(iterator pos,
constt&
t)111
iterator insert_after(iterator pos,
constt&
t)120
iterator locate(
constt&
t)125
iterator modify(iterator pos,
constt&
t)129
void
erase(iterator pos)
136void
clear()
143__list_size =0
;144
}145
};
鍊錶實現佇列 資料結構作業
仿照作業code1的功能,將課本上鍊表的實現佇列能完整實現 需要通過main函式呼叫並能進行友好的人機互動輸入 作業code1 鍊錶實現佇列的 include define ok 1 define error 0 using namespace std typedef int qelemtype t...
資料結構鍊錶 頭插法 尾插法 雙向鍊錶
我們最近學了資料結構鍊錶中的尾插法,頭插法,雙向鍊錶 鍊錶的步驟 1.申請乙個新的節點空間 2.給新的節點賦值資訊域 3.修改這個節點的指標域,將節點連線起來 尾插法 顧名思義就是從節點的尾部進行插入,首先申請乙個節點空間,給新的節點賦值資訊域,然後修改這個 節點的指標域,寫鍊錶首先要判斷頭節點是否...
JAVA資料結構之鍊錶 有dummyNode
private class node public node e e public node override public string tostring 需要size記錄擁有的元素個數 public class linkedlist 增 這因為,頭結點和中間結點有差異,所以需要分別討論。此處可以...