您的位置:首页 > 其它

数组实现的单链表的初始化 插入 删除

2017-02-12 16:26 253 查看
#include<stdio.h>

#define Maxroom 100

typedef struct User_type

{

}User_type;

typedef struct cursor

{
User_type data;
int cur;

}cursor;

//初始化 

void initList(cursor *List);

//插入

void insertList(cursor *List,int Index,User_type data);

//删除

void deletList(cursor *List,int Index);

void deletList(cursor *List,int Index)

{
int i;
if(Index>=List[0].cur||Index<1)
{
printf("error");
}
else   
{
if(Index>1)
{
List[Index-1].cur=List[Index].cur;
}
else
{
List[Maxroom-1].cur=List[Index].cur;
}
}

 } 

void initList(cursor *List)

{
int i;
for(i=0;i<Maxroom-1;i++)
{
List[i].cur=i+1;
}

}

void insertList(cursor *List,int Index,User_type data) 

{
int i;

if(Index<Maxroom&&Index>0&&Index<List[0].cur)
{
List[List[0].cur].data=data;
if(Index>1)
{
List[List[0].cur].cur=List[Index-1].cur;
List[Index-1].cur=List[0].cur;
List[0].cur++;
}
else if(Index==1)
{
List[List[0].cur].cur=List[Maxroom-1].cur;
List[Maxroom-1].cur=List[0].cur;
List[0].cur++;
}
}

else
{
printf("error");
}

 } 

int main()

{
cursor List[Maxroom];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐