链表

#include<stdio.h>
#include<stdlib.h>
typedef struct Node {
          int num;
          struct Node * next;
}Node;
int main(){
//==================build LinkedList============
        printf ("%d\n",sizeof(Node));
        int  len=10;
        Node  *head, *temp, *tail;
        for(int i=0; i<len; ++i){
        Node * n = malloc ( sizeof(Node));
        n -> num =i;
        if( i==0){
        head=n;
        temp=head;
}
     else{
               temp->next=n;
               temp=n;
      }
}
          tail=temp;
          temp->next=NULL;
//==================append Node LinkedList============
Node *newNode = malloc (sizeof(Node));
          newNode->num=20;
          tail->next =newNode;
          newNode->next=NULL;
          tail  = newNode;
          temp=newNode;

//=================remove  Node from LinkedList==========

          temp=head;
          int index=0;
          Node *t;
          if( index > 0){
          for( int i = 0; i < index-1; ++i){
                temp=temp->next ;
  }
          t=temp->next;
          temp->next =temp->next ->next;
            free(t);
  }
          else if(index==0){
          t=head;
          head = head -> next ;
          free(t);
    }
        temp=head;
        while( temp!=NULL){
                printf("%d\t%p\n",temp->num ,temp);
                    temp=temp->next;
      }
          return 0;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容