c++ 链表的初学

c++链表和c没啥区别
struct Node{
int id;
Node *next;
}Lnode,*Linklist;

定义了节点

当我们用的时候需要先建立链表:


 Linklist l;
   int x;
   //建立链表
   l=new Lnode;
   Linklist p,q;
   l->next=NULL;
   p=l;
   for(int i=0;i<10;i++){
    Linklist q=new Lnode;
    cin>>x;
    q->id=x;
    p->next=q;
    p=p->next;
   }
   p->next=NULL;

这样就有了链表,现在链表里有10个节点,每个节点里头有个自己的id号


现在我们做个基本操作,比如说找找看id=6的那个节点后面的节点的id

Linklist s;
   s=l->next;
   while(s&&s->id!=6){
    s=s->next;
   }
这样s指向了id=6的节点或者根本没有这样的节点

if(s->id==6){
    s=s->next;
    cout<id<

其实s->next也不一定有,懒得写了。其他的暂时没想起来啥地方和c不一样,如果题目不要求用链表就用STL最好用啊,明确要求了没办法了再用。

头插和尾插需要注意一下,有的时候用头插有的时候用尾插,然后删除的时候,单链表双链表的也都不一样,画画图的再做总好些。

你可能感兴趣的:(C++学习(入门))