結構特點:
template
struct dnode;
**設指標p指向雙鏈表中某一結點,則有下式成立:
p->llink->rlink = p = p->rlink->llink **
建立空雙鏈表:
first->rlink=null
first->llink=null
last=first
插入操作:
q->rlink=p->rlink;
q->llink=p;
p->rlink=q;
q->rlink->llink=q;
處理原則:先處理每個方向的 遠端指標,再處理近端指標,否則會把原後繼節點弄丟
雙向刪除:
p->llink->rlink=p->rlink;
p->rlink->llink=p->rlink;
delete§;
建造空的雙鏈表:
template
doublelink ::doublelink()
頭插法:
template
void doublelink::display()
coutdelete p;
p=q;
}
靜態鍊錶的優缺點:
優點:插入和刪除時不需要移動元素,直接修改指標即可,因此效率較高
缺點:靜態鍊錶是借助於陣列實現的,因此,不能動態的修改陣列的大小,存在著跟靜態陣列一樣不能按需進行儲存空間的分配
約瑟夫環的問題:
順序表:
建立乙個長度為n的順序表
從第index(初值0)個元素出發,依次計數,每數到d,就將該元素刪除
index=(index+d-1)%順序表的長度
重複上述工作,直到順序表中只剩乙個元素
迴圈鍊錶:
#include
using namespace std;
struct node
;int main()
p->pnext = first;
p = first;
for(i=1;i<=k-1;i++) //尋找報數的起點
p=p->pnext;
while (p != p->pnext) //只剩下乙個結點的
q = p->pnext; //q為要出隊的元素
p->pnext=q->pnext;
delete q;
p=p->pnext;
}cout << p->data var arr new array var arr array var arr array 1,2,3,4 var arr var arr 1,2,3 instanceof 操作符 array.isarray 方法 1.將物件的鍵值轉換為陣列 object.keys 2.string型別轉換為陣列 ... 什麼是型別 type 型別在c 中的作用 c 語言的型別系統 變數 物件與記憶體 型別 type 資料型別 性質相同的值得集合 記憶體 內部儲存單元,計算機執行程式的空間 外存 擴充套件儲存器,硬碟 賦值用 判斷用 dynamic 動態字元定義,弱型別的使用方法,c 是強型別程式語言 1 資料型別表... f.open file 檔案路徑 mode 模式 encoding 編碼 變數名 f.read print 變數名 f.close 模式描述 r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。rb以二進位制格式開啟乙個檔案用於唯讀。檔案指標將會放在檔案的開頭。這是預設模式。r 開啟乙...第六節 Node陣列
C 學習 第六節
第六節 檔案處理