链表怎么输出呀,可以写成数组一样,p加中括号(p[])这样输出吗,还是只能用地址p.data然后再指向,下一个地址输出?
链表只能一个节点一个节点的访问喔,代码如下:
while(p!=null){
cout<<p.data<<" ";
p=p.next;
}
可以写成数组形式输出。
就相当于你实现一个list的类,然后你重载下标运算符,就可以写成数组一样了
如果使用STL的list的话,是不支持随机访问,可以使用fornot和back方法访问list的第一个元素和最后一个元素。也可以使用迭代器iterator对链表进行遍历。
list<int> a;
for (int i = 1; i <= 5; i++)
a.push_back(i);
cout << a.front() << endl;
cout << a.back() << endl;
list<int>::iterator iter;
for (iter = a.begin(); iter != a.end(); iter++)
cout << (*iter) << endl;
但如果是使用数组模拟链表的话,就依然可以使用[]进行遍历