link鍊錶類實驗(多檔案模式)

2021-10-05 06:32:59 字數 1955 閱讀 2464

一、實驗目的

1.掌握使用new運算子建立物件的方法;

2.掌握使用delete運算子釋放物件記憶體的方法;

3.掌握使用物件導向思想實現鍊錶類並對鍊錶進行操作的方法。

二、實驗內容

1.設計並編寫鍊錶類,能夠實現鍊錶的初始化(建立)、輸出釋放等功能。

三、實驗指導

(1)鍊錶由若干個結點【node類物件】構成(每個結點有data域和next域,假設每個結點的data域是乙個整數,並且沒有重複元素),那麼某個鍊錶的邏輯示意圖如下:

3 1

2 6

5 null

圖3-1 鍊錶邏輯結構示意圖

下面給出鍊錶中結點類的定義:

class node //結點類

;node::node( )

void node::setnext(node p)

int node::getd( )

node node::getnext( )

node::~node( )

;#endif

node.cpp

#include

"node.h"

#include

using

namespace std;

node::

node()

void node::

setnext

(node *p)

int node::

getd()

node::

node

(int x)

node* node::

getnext()

node::

~node()

link.h

#ifndef link_h

#define link_h

#include

#include

"node.h"

using

namespace std;

class

link

;#endif

link.cpp

#include

"link.h"

#include

"node.h"

#include

#include

using

namespace std;

link::

link()

link::

link

(int n)

}node* link::

gethead()

void link::

linkprint()

cout<}link::

~link()

}void link::

insert

(int x)

void link::

delete

(int x)

else

}void link::

connect

(link&pl)

}link::

link

(link&l)

}

main.cpp

簡單測試類中函式的正確性

#include

"link.h"

#include

"node.h"

#include

#include

using

namespace std;

intmain

(int argc,

char

** ar**)

鍊錶《Link》

鍊錶 link 使用線性表的不足之處 1.如果長度不確定,使用線性表時,會很不方便,運算效率比較低。3.當為乙個線性表分配儲存空間時,如果儲存空間滿的話,再次插入資料的話,會造成 上溢 錯誤。這上面的三個不足,在鍊錶中都可以得到解決。在鏈式儲存方式中,要求每個節點由兩部分組成 一部分用於存放資料元素...

link 鍊錶操作

link 鍊錶結構 之前是操作字串string 鍊錶 頭元素,後面乙個乙個的指向後面的元素。redis內部實現了鍊錶的結構。鍊錶的頭尾,從乙個元素找到另外的元素。鍊錶的名字也是乙個key。flushdb 則資料全部沒了。lpush keyvalue 作用 把值插入到鏈結頭部 r1 0 lpush c...

redis03 link 鍊錶操作

link 鍊錶結構 之前是操作字串string 鍊錶 頭元素,後面乙個乙個的指向後面的元素。redis內部實現了鍊錶的結構。鍊錶的頭尾,從乙個元素找到另外的元素。鍊錶的名字也是乙個key。flushdb 則資料全部沒了。lpush keyvalue 作用 把值插入到鏈結頭部 r1 0 lpush c...