昨天寫了鍊錶,目前只寫了單鏈表,等有時間把迴圈鍊錶什麼的變異產品再寫出來
只有頭指標(沒有頭結點)的單鏈表
#pragma once
template struct node ;
template class singlelinkedlist ;
#include"singlelinkedlist.h"
template singlelinkedlist::singlelinkedlist()
template bool singlelinkedlist::deletebyindex(int index)
else
if (p == null)
q = p->next;
if (q == null)
p->next = q->next;
return true; }
}template bool singlelinkedlist::insertbyindex(int index,t value)
else
if (p == null)
node*n = new node;
n->value = value;
n->next = p->next;
p->next = n;
return true;
} }template bool singlelinkedlist::add(t value)
else
node*n = new node;
n->value = value;
n->next = null;
p->next = n;
} return true;
}template t singlelinkedlist::getvaluebyindex(int index)
return p->value;
}template node* singlelinkedlist::getnodebyindex(int index)
return p;
}template node* singlelinkedlist::getnodebyvalue(t value)
return p;
}template bool singlelinkedlist::replacebyindex(int index,t value)
if (p == null)else
}
迴圈雙指標鍊錶:
cyclelinkedlist.h:
#pragma once
template struct node ;
template class cyclelinkedlist ;
cyclelinkedlist.cpp:
#include"cyclelinkedlist.h"
template cyclelinkedlist::cyclelinkedlist()
template bool cyclelinkedlist::addathead(t value)
else
return true;
}template bool cyclelinkedlist::addattail(t value)
else
return true;
}template bool cyclelinkedlist::isempty()
else
}template bool cyclelinkedlist::deletehead()
else
else
return true; }}
template bool cyclelinkedlist::deletetail()
else
else
return true; }}
template t cyclelinkedlist::gethead()
else
}template t cyclelinkedlist::gettail()
else
}template t cyclelinkedlist::getbyindex(int index)
nodep = head;
int i = 0;
while (p != head)
i++;
p = p->right;
} return null;
}template t cyclelinkedlist::getbyvalue(t value)
nodep = head;
while (p != head)
p = p->right;
} return null;
}
c 資料結構鍊錶的實現
資料結構中最開始學習實現的就是鍊錶 1 這個標頭檔案 list head 為建立結構體,用來儲存資料 include using namespace std template struct node 建立結構體 template node node template node node type i...
資料結構 鍊錶的c 實現
ifndef my head h define my head h include g code c myhead.h endif my head h template typename elemtype class linklist typedef list node nodepointer 指向...
資料結構 C語言鍊錶實現
資料結構 c語言鍊錶實現 目錄 靜態單鏈表實現 動態單鏈表實現 雙向鍊錶實現 迴圈單鏈表 我學資料結構的時候也是感覺很困難,當我學完後我發現了之所以困難時因為我沒有系統的進行學習,而且很多教授都只是注重資料結構思想,而忽略了 方面,為此我寫了這些博文給那些試圖自學資料結構的朋友,希望你們少走彎路 我...