链表的插入操作

来源:互联网 发布:淘宝电脑版首页登录 编辑:程序博客网 时间:2024/05/01 17:26

这里介绍两种代码最简单(emmm 应该是最简单的)的单链表和双链表的插入操作

  1. 单链表
#include <stdlib.h>#include <stdio.h>#define FALSE 0#define TRUE 1struct Node{    Node *link;    int value}/* linkp在作为参数传递时指示的是指向根指针的指针 */int sll_insert(register Node **linkp,int new_value){    register Node *current;    register Node *new;    // 遍历链表,知道新的值大于或等于节点的值    while((current=*linkp)!=NULL && current->value<new_value)        linkp=&current->link;    new=(Node *)malloc(sizeof(Node));    if(new==NULL)        return FALSE;    new->value=new_value;    // 插入新节点    new->link=current;    *linkp=new;    return TRUE;}
  1. 双链表
#include <stdlib.h>#include <stdio.h>struct Node{    Node *fwd;    Node *bwd;    int value}/* rootp在作为参数传递时指示的是根指针 */int dll_insert(register Node *rootp,int new_value){    register Node *this;    register Node *next;    register Node *newnode;    /*     遍历链表,查看new_value是否已经存在与链表中,    是就返回知道新的值大于或等于节点的值,    否就新建一个节点存储新的值,    this指向新节点之前的节点,    next指向新节点之后的节点。     */    for(this=rootp;(next=this->fwd)!NULL;this=next)    {        if(next->value==new_value)            return 0;        if(next->value>new_value)            break;    }    newnode=(Node *)malloc(sizeof(Node));    if(new_value==NULL)        return -1;    newnode->value=new_value;     newnode->fwd=next;    this->fwd=newnode;    // 如果插入的节点不是在起始位置    if(this!=rootp)        newnode->bwd=this;    else        newnode->bwd=NULL;    // 如果插入的节点不是在末尾位置    if(next!==NULL)        next->bwd=newnode;    else        rootp->bwd=newnode;    return 1;}
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 叉车证审证流程 电工证审证怎么审 药品审评中心 抵押车6年以后没绿本怎么审车 异地审车需要什么手续 油改气审车新规定2019 审车提前多长时间可以审 6年免审车年审需要带资料 2018摩托审车过期允许多长时间 2018审车过期允许多长时间 脱审车还能年审吗 审车带什么证件 审车过期允许多长时间 审车时间 换发动机审车可以过吗 2018年异地审车新政策 审车时间规定可以延迟多久 审车提前多长时间 审车提前多久 审车可以提前多久 摩托车审车 审车费用 审车材料 可以异地审车吗 6年免审车第二年审需要带资料 旧车审车尾气小窍门 审车需要什么材料 审车可以提前多长时间 2018年小车审车多少钱 审车需要带什么材料 摩托车审车需要带什么 审车需要多少钱 全国车审查询系统 车审需要带哪些资料 审车多少钱2019 新车审车 异地审车委托书 审车需要本人去吗 什么时候审车 怎样审车 审车去哪里