双向循环链表的增删查操作
2015-10-14 11:53
260 查看
双向循环链表的增删查操作
typedef structDNode
{
ElemType data;
struct DNode *prior, *next;
}DNode, * DoubleList;
插入操作:
intDlinkIns(DoubleList L, int i, ElemType e)
{
DNode *s, *p;
s=(DNode*) malloc(sizeof(DNode));
if(s)
{
s->data = e;
s->prior =p->prior; p->prior->next = s;
s->next= p;p->prior=s;
return TRUE;
}
else
returnFALSE;
}
删除操作:
intDlinkDel(DoubleList L, int i, ElemType *e)
{
DNode *p;
*e = p->data;
p->prior->next= p->next;
p->next->prior=p->prior;
free(p);
return TRUE;
}
双向循环链表的增删查操作
typedef structDNode
{
ElemType data;
struct DNode *prior, *next;
}DNode, * DoubleList;
插入操作:
intDlinkIns(DoubleList L, int i, ElemType e)
{
DNode *s, *p;
s=(DNode*) malloc(sizeof(DNode));
if(s)
{
s->data = e;
s->prior =p->prior; p->prior->next = s;
s->next= p;p->prior=s;
return TRUE;
}
else
returnFALSE;
}
删除操作:
intDlinkDel(DoubleList L, int i, ElemType *e)
{
DNode *p;
*e = p->data;
p->prior->next= p->next;
p->next->prior=p->prior;
free(p);
return TRUE;
}
相关文章推荐
- 易错点小消除--递增运算符
- 这些在安装Windows 10时常用到的(类似备忘录)
- iOS9适配
- 跳转控制器传值
- 浅谈JSONP 的工作原理
- ex.
- 第五章基元数据,引用类型和值类型(CLR学习)
- Winform appconfig修改后的更新问题
- 《编写有效用例》阅读笔记二
- 如何判断ios设备类型
- 如果字符串是科学:如123213e21,转化为字符串
- Nginx_cache缓存部署
- C++ vector 删除某一元素
- javaIO--通过SAX方式解析xml文件简例
- python-面向对象(股票对象举例)
- 从系统相册选择多张图片
- CString类常用方法----Left(),Mid(),Right(),Left()
- android.os.NetworkOnMainThreadException
- 32讲课后习题1
- ERROR ITMS-90086