数据结构0826

//申请头结点

lian tou()

{

lian h=(lian)malloc(sizeof(node));

if(h==NULL)

return NULL;

//初始化

h->len=0;

h->next=NULL;

h->pri=NULL;

//返回

return h;

}

//申请普通节点

lian jie(int ele)

{

lian new=(lian)malloc(sizeof(node));

if(new==NULL)

return NULL;

//初始化

h->data=ele;

h->next=NULL;

h->pri=NULL;

return new;

}

//判空

int kong(lian h)

{

if(h==NULL)

return -1;

return h->next==NULL;

}

//头插

void toucha(lian h,int ele)

{

if(h==NULL)

return;

//插入

//创建普通节点

lian s=jie(ele)

//连线

//第一个h->next指向空

s->next=h->next;

s->pri=h;

//头结点后继节点的前驱指向新结点

if(h->next!=NULL)

{

h->next->pri = s;

}

//头结点的后继指向新结点

h->next = s;

H->len++;

}

//尾插

void weicha(lian h,int ele)

{

if(h==NULL)

return;

//尾插

lian s=jie(ele);

//循环找到尾部

lian p=h;

while(p->next!=NULL)

{

p=p->next;

}

//连接

s->next=NULL;

s->pri=p;

p->next=s;

}

//头删

void toushan(lian h)

{

if(h==NULL)

return;

if(kong(h))

return;

//头删

lian del=h->next;

//如果链表数量多余1

if(del->next!=NULL)

{

del->next->pri=h;

}

//让头结点的后记保存第一个节点的后记

h->next=del->next;

free(del);

h->len--;

}

//尾删

void weishan(lian h)

{

if(h==NULL)

return;

if(kong(h))

return;

lian p=h;

while(p->next!=NULL)

{

p=p->next;

}

//让倒数第二个节点指空

p->pri->next=NULL;

free(p);

h->len--;

}

//按位置插入

void ancha(lian h,int pos,int ele)

{

if(h==NULL)

return;

//判断位置合理性

if(pos<0||pos>h->len)

return;

//保存头结点

lian p=h;

//找到位置

for(int i=0;i<pos-1;i++)

{

p=p->next;

}

//创建新节点

lian s=jie(ele)

//连线

s->next=p->next;

s->pri=p;

p->next=s;

p->next->pri=s;

h->len++;

}

//按位置删除

void anshan(lian h,int pos)

{

if(h==NULL)

return;

if(kong(h))

return;

if(pos<0||pos>h->len)

return;

//保存头结点

lian p=h;

for(int i=0;i<pos-1;i++)

{

p=p->next;

}

//找到位置

//保存

lian del=p->next;

//让

p->next=del->next;

if(del->next!=NULL)

{

del->next->pri=p;

}

free(del);

h->len--;

}

相关推荐
L-影2 天前
下篇:核函数、软间隔和它的“江湖地位”——SVM的三种形态
人工智能·机器学习·支持向量机
reset20212 天前
支持向量机(SVM)原理与应用
人工智能·机器学习·支持向量机
Proxy_ZZ05 天前
AI时代工程师的核心竞争力演变
支持向量机
colus_SEU12 天前
SVM 面试题总结
算法·机器学习·支持向量机
沅_Yuan12 天前
基于RIME-CNN-SVM的多输入单输出回归预测模型【MATLAB】
神经网络·支持向量机·matlab·回归·cnn·svm·rime
colus_SEU12 天前
SVM 的终极视角:合页损失函数 (Hinge Loss) 与正则化
算法·机器学习·支持向量机
Dev7z17 天前
基于MATLAB与SVM实现河道水面漂浮物的自动检测与识别
人工智能·支持向量机·matlab
北冥有羽Victoria18 天前
TGC:深度时序图聚类的动态建模与时空平衡|ICLR 2024 深度解读
人工智能·python·算法·机器学习·支持向量机·聚类
Dev7z18 天前
基于SVM与HOG算法的行人检测系统设计与实现
算法·机器学习·支持向量机·行人检测·hog算法
机器学习之心19 天前
NRBO-SVM分类预测+特征贡献SHAP分析+特征依赖图!机器学习可解释分析,Matlab代码实现
机器学习·支持向量机·分类·shap分析·nrbo-svm分类预测