#include using namespace std;
const int maxsize = 100;
templatestruct node
;templateclass indirectaddress
;//無參構造
templateindirectaddress::indirectaddress()
//有參構造 尾插法
templateindirectaddress::indirectaddress(datatype a, int n)
r->next = null; //建立結束,把指標下一位置空
}templateint indirectaddress::length()
templatedatatype indirectaddress::get(int i)
template void indirectaddress::insert(int i, datatype x)
node*tn;
tn = new node;
tn->data = x;
tn->next = p->next;
p->next = tn;
length++;
// 順序表的插入
if (length >= maxsize)
for (int b = length - 1; b > i - 1; b--)
address[i - 1] = tn;
}templatedatatype indirectaddress::delete(int i)
node*tn;
tn = new node;
tn = p->next;
x = tn->data;
p->next = tn->next;
delete tn;
length--;
// 順序表操作
address[i - 1] = null;
for (int j = i - 1; j <= length; j++)
return x;
}templatevoid indirectaddress::printlist()
std::cout << "\n";
}templateindirectaddress::~indirectaddress()
length = 0;
}int main(int argc, const char * argv)
; indirectaddressdd(a, 5);
cout << "所有節點資訊為";
dd.printlist();
std::cout << "輸出第三個節點資訊" << dd.get(3) << "\n";
std::cout << "插入節點為6的節點在第三位";
dd.insert(3, 6);
cout << "所有節點資訊為";
dd.printlist();
std::cout << "刪除第三個節點" << dd.delete(3);
cout << "所有節點資訊為";
dd.printlist();
cout << "第五個節點的資訊" << dd.get(4) << "\n";
實驗3 間接定址
一 實驗目的 鞏固線性表的資料結構的儲存方法和相關操作,學會針對具體應用,使用線性表的相關知識來解決具體問題。二 實驗內容 建立乙個由n個學生成績的順序表,n的大小由自己確定,每乙個學生的成績資訊由自己確定,實現資料的對錶進行插入 刪除 查詢等操作。分別輸出結果。用間接定址實現 三 實驗步驟 1 依...
資料結構 六 間接定址
其實在作為鍊錶成員函式的箱子排序中已經用到間接定址,即指向指標的指標。chiannode bottom,top bottom new chainnode range 1 top new chainnode range 1 這裡的bottom儲存的資料型別為chainnode 的指標型別,指向指標的b...
實驗二 間接定址實現學生成績
源 include using namespace std template class t class node const int maxsize 100 常量指定陣列長度 template class indirect 返回單鏈表的長度 t get int i 按位查詢,查詢第i個節點的元素 ...