#include “loop_list.h”
//创建单向循环链表
loop_p create_head()
{
loop_p L=(loop_p)malloc(sizeof(loop_list));
if(L==NULL)
{
printf(“create failn”);
return NULL;
}
L->len = 0;
L->next=L;
return L;
}
//创建节点
loop_p create_node(datatype data)
{
loop_p new=(loop_p)malloc(sizeof(loop_list));
if(new==NULL)
{
printf(“create failn”);
return NULL;
}
new->data=data;
return new;
}
//头插
void insert_head(loop_p L,datatype data)
{
if(L==NULL)
{
printf(“data failn”);
return;
}
loop_p new=create_node(data);
new->next=L->next;
L->next=new;
L->len++;
}
//输服务器托管网出
void out_put_loop(loop_p L)
{
loop_p p=L->next;
while(p!=L)
{
printf(“%d—>n”,p->data);
p=p->next;
}
putchar(10);
}
//按位置插入
void insert_pos(loop_p L,datatype data,int pos)
{
loop_p new=create_node(data);
loop_p p=L;
for(int i=0;i {
p=p->next;
}
new->next=p->next;
p->next=new;
L->len++;
}
//尾删
void del_tail(loop_p L)
{
loop_p p=L;
while(p->next->next!=L)
{
p=p->next;
}
loop_p del=p->next;
p->next=L;
free(del);
L->len–;
}
//按位置删除
int del_pos(loop_p L,datatype pos)
{
loop_p p=L;
for(int i=0;i {
p=p->next;
}
loop_p del = p->next;
p->next=p->next->next;
free(del);
L->len–;
}
#ifndef __LOOP_LIST_H__
#define __LOOP_LIST_H__
#include
#include
typedef int datatype;
typedef struct loop_list
{
union
{
int len;
datatype data;
};
struct loop_list *next;
}loop_list,*loop_p;
//创建单向循环链表
loop_p create_head();
//创建节点
loop_p create_node(datatype data);
//头插
void insert_head(loop_p L,datatype data);
//按位置插入
void insert_pos(loop_p L,datatype data,int pos);
//输出(看现象)
void out_put_loop(loop_p L);
//尾删
void del_tail(loop_p L);
//按位置删除
int del_pos(loop_p L,datatype pos);
#endif
#include “loop_list.h”
int main()
{
loop_p L=c服务器托管网reate_head();
insert_head(L,1);
insert_head(L,2);
insert_head(L,3);
insert_pos(L,4,2);
//del_tail(L);
del_pos(L,2);
out_put_loop(L);
return 0;
}
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: 鸿蒙HarmonyOS实战-ArkUI动画(放大缩小视图)
前言 在HarmonyOS中,可以通过以下方法放大缩小视图: 使用缩放手势:可以使用双指捏合手势来放大缩小视图。将两个手指放在屏幕上,并向内或向外移动手指,即可进行放大或缩小操作。 使用系统提供的缩放控件:在HarmonyOS的开发中,可以使用系统提供的缩放控…