注重基礎才是筆試面試的王道。在準備實習的過程中把資料結構的幾個基本點實現了一遍,大家多交流提高~
每一篇都由乙個.h和乙個.cpp檔案組成,實現方便,驗證直觀。
如果您是像我一樣的初學者,建議敲一遍**並且單步跟蹤一遍,對加深理解很好。
第一篇。單鏈表~
linklist.h標頭檔案中**:
#includeusing namespace std;
#ifndef linklist_h
#define linklist_h
template struct node
;template class linklist
;template t linklist::get(int i)
if(!s)
throw"位置!";
else
return s->data;
}template int linklist::locate(t x)
if(p)
return j;
else
return -1;
}template t linklist::delete(int i)
if(!p || !p->next)
throw "位置!";
else }
template void linklist::insert(int i,t x)
if(!p)
throw "位置!";
else }
template linklist::linklist(t a,int n)
r->next = null;
//頭插法
/*first = new node;
first->next = null;
for(int i = 0;i* s = new node;
s->data = a[i];
s->next = first->next;
first->next = s;
}*/}template linklist::~linklist()
}template void linklist::printlist()
}#endif
.cpp中驗證**為
#include "stdafx.h"
#include "linklist.h"
int _tmain(int argc, _tchar* argv)
; linklista(r,5);
trycatch(char *s)
{ cout<
完~
資料結構 單鏈表 基礎
在實現單鏈表的基本功能後 單鏈表的幾個基本問題 1.比較順序表和煉表的優缺點,說說它們分別在什麼場景下使用?順序表 物理位置相鄰 優點 在一段記憶體中用陣列連續存放,所以方便隨機查詢元素。缺點 動態開闢,容易造成記憶體浪費,需要乙個元素,開闢過多。前面新增元素時,要逐個挪動後面的每個元素,較麻煩。場...
資料結構基礎 單鏈表
關於單鏈表的一些基本操作,以下為基本思路 首先看一張直觀圖 鍊錶的結構體定義如下 為簡便,這裡的elemtype採用int 單鏈表 typedef struct lnode linklist 接下來肯定就是建立鍊錶,而目前建立單鏈表分為兩種方式,分別是 頭插法 與 尾插法 首先看圖示 清楚明白 我們...
資料結構 單鏈表實現
線性表的鏈式儲存結構的特點是用一組任意的儲存單元儲存線性表的資料元素 這組儲存單元可以是連續的,也可以是不連續的 因此,為了表示每個資料元素與其直接後繼資料元素之間的邏輯關係,對資料元素來說,除了儲存其本身的資訊之外,還需儲存乙個指示其直接後繼的資訊 即直接後繼的儲存位置 這兩部分資訊組成資料元素的...