C++对双链表的操作
//C++对双链表的操作
#include <iostream>
using namespace std;typedef struct node
{int data;struct node *left;struct node *right;
}node;typedef struct single
{int data;struct single *next;
}single;/*
创建一个双链表
*/node* Create()
{struct node *head;struct node *p;struct node *s;head = (node*)malloc(sizeof(node));p = head;int cycle = 1;int x;while(cycle){cout<<"请输入数据"<<endl;cin>>x;cout<<' ';if(x!=0){s = (node*)malloc(sizeof(node));s->data = x;p->right = s;s->left = p;p= s;}else{cycle = 0;}}head = head->right;head->left = NULL;p->right = NULL;return (head);
}/*
建立一个空的循环单链表
*/
int InitList(struct single *head,int n)
{struct single *p;head = (single*)malloc(sizeof(single));p = head;int cycle = 1;for(int i = 0;i<n;i++){p = (single*)malloc(sizeof(single));p = p->next;}return 1;
}void main()
{Create();
}
转载于:https://www.cnblogs.com/CBDoctor/archive/2012/08/05/2624137.html
C++对双链表的操作相关推荐
- 数据结构与算法之双链表的操作
双链表的操作 /* 实现双链表的构建.初始化.数据添加(在指定位置添加).数据删除(删除指定元素,并返回该元素的位置)的算法设计: */ #include<iostream> #inclu ...
- C语言数据结构篇——双链表的创建,插入,节点删除,打印等操作
作者名:Demo不是emo 主页面链接:主页传送门 创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSD ...
- Linux内核链表之共享双链表
说明 共享双链表意义在于,可以用一套函数维护不同数据类型的双链表 准备 定义双链表 #include <iostream> #include <string>using nam ...
- 【数据结构】线性表的链式存储-双链表
引言 单链表结点中只有一个指向其后继的指针,这使得单链表只能从头结点依次顺序地向后遍历.若要访问某个结点的前驱结点(插入.删除操作时),只能从头开始遍历 ,访问后继结点的时间复杂度为 0(1),访问前 ...
- C#数据结构-双链表
据说单链表没有回路,那么双链表也出现了,既包括后继指针,又加入了前驱指针,某个元素可以寻找他上面一个元素,也可以寻找到下一个元素.当然双链表也是链表的一种. 物理存储结构:不一定是连续的存储区域 逻辑 ...
- 双链表——双链表的定义及其基本操作(初始化、头插法尾插法建表、插入、查找、删除、判空等)
文章目录 双链表的定义 双链表上的操作 初始化 插入操作 建立双链表 头插法建立双链表 尾插法建立双链表 遍历操作 求双链表的长度 查找操作 按值查找 按位查找 删除操作 判空操作 完整代码及实例 总 ...
- 双链表(删除节点操作)
在双链表中删除第i个节点算法如下: 首先要会: 双链表的存储结构定义: typedef struct DLinkList{int data;DLinkList * prior;DLinkList * ...
- 双链表(插入节点操作)
在双链表L中第i个位置插入值域为e的结点. 双链表的存储结构定义: typedef struct DLinkList{int data;DLinkList * prior;DLinkList * ne ...
- 双链表插入、删除操作单步解析(十四)
1.双链表定义 单链表只能向后操作,不能向前操作.双链表可以向前和向后操作. 双链表特点:以下图解释 一个前驱指针:ai的前驱指针,指向ai-1结点,即存放ai-1的地址. 数据域:存放数据 一个后驱 ...
最新文章
- Springboot+Mybatis+Durid
- [Spring cloud 一步步实现广告系统] 21. 系统错误汇总
- match_phrase搜不出来,怎么办?
- 什么是CharSequence
- C/C++输入输出流
- 构建嵌入式linux系统_用于构建嵌入式Linux系统的4种工具
- 深圳增强互动科技_增强女性在科技领域的十项原则
- SpringBoot整合Redis代码相关配置
- 201571030139/201571030134 小学生四则运算软件结对编程
- Python实现WGS 84坐标与web墨卡托投影坐标的转换
- python:可变参数与apply
- 【UVA11988】Broken Keyboard (模拟链表 or 双端队列+栈)
- Leetcode 惊现马化腾每天刷题?为啥大佬都这么努力!
- 创建 GitHub 个人访问令牌
- 桌面图标白色大块异常恢复
- 今日算法笔试练习【5】(08-06)(历年笔试题)
- 多肉淘宝养成记(含治疗玻璃心)
- 如何查看html的字体,如何检测网页中使用了哪种定义的字体?
- java ssm 基于springboot的志愿者招募网站
- 无线网卡AP模式和station模式
热门文章
- 跟我一起学Oracle 11g【1】----基础回顾
- Android编程之ArrayList源码详解及使用
- error: failed to launch '/private/var/mobile/Applications/** busy解决办法
- typescript + react 项目开发体验之起手式
- 网络编程 - socket接收大数据
- android清理缓存动画、天气APP、购物下单选择器、阅读APP、饿了么demo等源码
- 通用线程 -- sed 实例
- spring4笔记----依赖注入的两种形式
- C#学习基础---BrowsableAttribute.Browsable属性
- ERROR 1442 (HY000):because it is already used by statement which invoked this stored function/tr