数据结构之双线链表
来源:互联网 发布:mac播放器哪个好 编辑:程序博客网 时间:2024/06/05 19:14
双向链表的相关操作
// ConsoleApplication2.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream>#include <cstdlib>#include <cstring>using namespace std;typedef struct Node{int x;Node *next;Node *pre;}Node,*Lnode;void creat(Node& node,int n,int *a){Lnode p=&node,q;for(int i=n-1;i>=0;i--){q= new Node;q->next=NULL;q->pre=NULL;q->x=a[i];p->next->pre=q;q->next=p->next;q->pre=p;p->next=q;}}bool Del(Node& node,int num){Lnode p=node.next,q=&node;for(p;p!=q;p=p->next){if(p->x==num) // 找到这个元素num了{q=p;p->pre->next=p->next;p->next->pre=p->pre;free(q);return true;}}return false;}void Prin(Node& node){Lnode p=node.next,q=&node;for(p;p!=q;p=p->next)cout<<p->x<<endl;cout<<"end"<<endl;}bool Add(Node& node,int i,int num){ // 在第i个位置插入元素num(默认从head开始)Lnode p=node.next,q=&node;int k=1;for(;k<i;p=p->next,k++) ;// 现在就相当于在q和p中插入一个元素Lnode r=new Node;r->x=num;r->next=r->pre=NULL;p->pre->next=r;r->pre=p->pre;r->next=p;p->pre=r;return true;}void SupPrin(Node& node ,int i) // 为了验证循环列表的正确性,从第i个节点开始输出{Lnode p=node.next,q;int k=1;for(;k<i;) {p=p->next;k++;}// 现在是从p开始打印了// 需要注意到一点是,我这个node类型,head是空的,在输出结果的时候需要跳过head.xq=p;for(p;p!=&node;p=p->next)cout<<p->x<<endl;p=node.next;for(;p!=q;p=p->next)cout<<p->x<<endl;cout<<endl;}int main(){Node head;head.next=&head;head.pre=&head;int a[5]={2,3,5,1,78};creat(head,5,a);Prin(head);bool t1=Del(head,5);cout<<t1<<endl;Prin(head);cout<<endl<<endl;SupPrin(head,2);cout<<endl<<endl;Add(head,2,45);Add(head,2,35);Add(head,2,15);Add(head,2,65);Prin(head);return 0;}
0 0
- 数据结构之双线链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 数据结构之链表
- 线程池的原理和连接池的原理
- java文件路径操作详细
- 推荐决策之协同过滤
- 浅析 微信公共平台消息 开发原理
- VisualSVN Server安装时无法启动服务的解决
- 数据结构之双线链表
- highcharts useUTC:针对xAxis的type为datetime类型
- 基础教程2——Start Developing iOS Apps Today——从今天开始开发IOS(IOS7版)系列源文档翻译(三)
- Python 注意
- Catch That Cow
- apache之mina
- javah命令提示无法访问android.app.activity类文件
- 新中国建国后的战略漫谈(转载)
- DTrace C++ Mysteries Solved