【9-1-6】链表的插入

来源:互联网 发布:linux的home目录 编辑:程序博客网 时间:2024/05/29 15:42

链表实现增删查改  排序  反转

#include<stdio.h>
#include<stdlib.h>
//实现链表的动作,第一步:插入,先要定义插入,第二步:初始化,第三步,打印所有链表结点
//一般在头文件存在声明
struct LinkNode//LinkNode 结点
{
int data;
struct LinkNode *pNext;//要创建一个指针指向自己
};
//把struct LinkNode简化node,typedef的作用是简化类型
typedef struct LinkNode node;


//创建一结构体对它初始化,改变一变量需要它的地址
void init(node *phead);//作用是初始化






//定义函数add();第一步插入一个数据,1:传递这样一个指针phead,把头结点传递过来,2:然后int data,是我们需要插入的数据,我们需要返回值,4:返回它的头结点,用node*
node*add(node*phead, int data);//作用是尾部添加结点
//传递这个结点
void showall(node*phead);//显示
void revshowall(node*phead);








#include "linlist.h"
//实现链表的动作,第一步:插入,先要定义插入,第二步:初始化,第三步,打印所有链表结点
//一般在头文件存在声明
struct LinkNode//LinkNode 结点
{
int data;
struct LinkNode *pNext;//要创建一个指针指向自己
};
//把struct LinkNode简化node,typedef的作用是简化类型
typedef struct LinkNode node;


//创建一结构体对它初始化,改变一变量需要它的地址
void init(node *phead)//作用是初始化
{
phead->pNext = NULL;
phead->data = 0;//初始化
}




//定义函数add();第一步插入一个数据,1:传递这样一个指针phead,把头结点传递过来,2:然后int data,是我们需要插入的数据,我们需要返回值,4:返回它的头结点,用node*
node*addback(node*phead, int data)//作用是尾部添加结点
{
//插入分2种,头插入和尾插入


}


//传递这个结点
void showall(node*phead)//显示
{
if (phead==NULL)
{
return;
}
else{
printf("%d,%p,%p\n",phead->data,phead,phead->pNext);
showall(phead->pNext);//跳到下一个结点


}
}
void revshowall(node*phead)//revshowall是反转显示,反转用递归写
{
if (phead == NULL)
{
return;
}
else{

showall(phead->pNext);//跳到下一个结点
printf("%d,%p,%p\n", phead->data, phead, phead->pNext);


}


}

0 0
原创粉丝点击