c语言实现链表结构6,用c语言实现的链表结构--数据结构实验
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include"stdio.h"
//使用new指针来将临时变量重新初始化
#include"stdio.h"
typedef int ElemType;
typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
void InitList(LinkList &L)//L是头指针,指针指向第一个节点,通过移动L的指向来加入元素
{
ElemType e;
LinkList p;
L=new LNode;
L->next = NULL;
printf("请输入链表中的数据元素,以0结束");
scanf("%d",&e);
while(e)
{
p=new LNode;
p->data=e;
p->next=L->next;
L->next=p;
scanf("%d",&e);
}
}
void PrintList(LinkList L)
{
LinkList p;
ElemType ddt;
p=L->next;
while(p){
ddt=p->data;
printf("%d\t",ddt);
p=p->next;
}
printf("\n");
}
void InsertList(LinkList &L)
{
LinkList p;
printf("\ninput the number at the tail of table which you wish to insert\n");
p=new LNode;
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
void Delete(LinkList &L)
{
LinkList p,temp;
ElemType e;
printf("\ninput the number you wish to delete\n");
scanf("%d",&e);
temp=L;
p=L->next;
while(p)
{
if(p->data==e)
{
printf("the opertation is successful\n");
temp->next=p->next;
break;
}
else
temp=p;
p=p->next;
}
}
LinkList Daozhi(LinkList &L)
{
LinkList p;
LinkList s,pp;//倒置即将表中元素输出后重新赋值,再创建另外一个链表,s为新链表的表头
LinkList temp;
p=L->next;//
s=new LNode;
s->next=NULL;
while(p)
{
pp=new LNode;
pp->data=p->data;
pp->next=s->next;
s->next=pp;
p=p->next;
}
return s;
/*
temp=new LNode;
temp=s->next;
while(temp)
{
printf("%d\t",temp->data);
temp=temp->next;
}
*/
}
LinkList Comb(LinkList &L1,LinkList &L2)
{
printf("asdp");
LinkList p1,p2,p3;//p1对应L1的暂存变量,p2对应L2的暂存变量
LinkList temp;//输出的临时变量
LinkList L3;
L3=new LNode;
L3->next=NULL;
p1=L1->next;
p2=L2->next;
while(p1&&p2)
{
if(p1->data<=(p2->data))
{
p3=p1;
p1=p1->next;
}
else{
p3=p2;
p2=p2->next;
}
c语言实现链表结构6,用c语言实现的链表结构--数据结构实验相关推荐
- 《数据结构》c语言版学习笔记——单链表结构(线性表的链式存储结构Part1)
线性表的链式存储结构 数据结构系列文章 第二章 单链表结构 文章目录 线性表的链式存储结构 前言 一.单链表的建立 代码 二.单链表的读取 代码 三.单链表的插入 代码 四.单链表的删除 代码 五.单 ...
- c语言通讯录链表结构体排序,写个通讯录 想要简单就全用的是结构体数组要求改成用链表的...专业的朋友看能不能最简洁的改一下...
已结贴√ 问题点数:20 回复次数:10 写个通讯录 想要简单就全用的是结构体数组要求改成用链表的...专业的朋友看能不能最简洁的改一下 写个通讯录 想要简单就全用的是结构体数组...不符合要求 要改 ...
- java静态链表_静态链表及其创建(C语言实现)
<顺序表和链表优缺点>一节,我们了解了两种存储结构各自的特点,那么,是否存在一种存储结构,可以融合顺序表和链表各自的优点,从而既能快速访问元素,又能快速增加或删除数据元素. 静态链表,也是 ...
- c语言有2维结构体没,c语言结构体说明
关键词:语言,结构 摘要:1.直接声明结构体变量: struct{ int length; int width; }box1; 这样就声明了一个名为box1的结构体变量,但是同时要注意,如果在同一个程 ...
- C语言单链表讲解(上):有表头链表的使用
目录 前言 单链表的分类 有表头单链表 一.create()创建链表,后面产生的结构体将放在表头后面 二.newNote()创建节点,读取用户输入的记录,生成结构体数据 三.insert()从表头插入 ...
- 数据结构链表详解(c语言实现)
链表(C语言) 绪论 单链表的实现 单链表的定义 单链表的初始化 单链表的插入删除 单链表的删除 单链表的查找 单链表的修改 单链表的建立 双向链表 循环链表 链表与顺序表的区别 总结 绪论 线性表是 ...
- c语言链表head的作用,c语言链表的用法
c语言链表的用法 链表是数据结构中比较基础也是比较重要的类型之一,那么有了数组,为什么我们还需要链表呢!或者说设计链表这种数据结构的初衷在哪里?下面小编就为大家介绍下c语言链表的用法. c语言枚举的用 ...
- c语言链表中何时用点何时用箭头,链表基本操作及其过程详细叙述
链表概述:链表是一种常见的数据结构.数组可以存放数据,但是使用数组时要先指定数组中包含元素的个数,即数组长度.但是如果向这个数组中加入的元素个数超过了数组的大小时,便不能将内容完全保存.例如在定义一个 ...
- R语言ggplot2可视化为长文本轴标签自动换行美化可视化结构实战:Wrap long text axis labels
R语言ggplot2可视化为长文本轴标签自动换行美化可视化结构实战:Wrap long text axis labels 目录
- 数据结构 - 静态单链表的实行(C语言)
静态单链表的实现 1 静态链表定义 静态链表存储结构的定义如下: /* 线性表的静态链表存储结构 */ #define MAXSIZE 1000 /* 假设链表的最大长度是1000 */ typede ...
最新文章
- MySQL 数据库常用命令—insert delete update select
- 《第一行代码》学习笔记40-网络(1)
- Codeforces Round #321 (Div. 2) Kefa and Company 二分
- 循环链表解决约瑟夫问题(简化版)
- Java编程学习中必须掌握的13个核心技术
- 如何玩转 WebGL 并行计算
- android wear 2 手表,Android Wear 2.0 和新款智能手表有望在2月8号发布
- 小木棍(洛谷-P1120)
- 08.实例方法和类方法的区别与及工厂方法
- FreeRADIUS服务器搭建及配置
- Ubuntu压缩视频
- MT6573_android_LCD_backlight_Driver
- Vuex模块化用法 跨模块调用方法
- qmainwindow 标题栏_Qt:自定义标题栏(QMainWindow)
- 实习生也容易上手的ui框架
- 编译程序与解释程序区别
- hosts.ics或hosts权限修改、GitHub无法访问Windows下载问题
- excel中条形图的条目排序与逆序
- vnc远程控制软件,linux系统如何使用vnc远程控制软件,vnc客户端使用教程
- mysql使用结巴语句_结巴分词 java 高性能实现,是 huaban jieba 速度的 2倍
热门文章
- java 百度poi_Android应用中使用百度地图API之POI(三)
- com/android/dx/command/main,com/android/dx/command/dexer/Main : Unsupported major.minor version 52.0
- ionic保存到mysql_ionic sqlite 存取数据封装(兼容真机与webkit浏览器)
- c语言fork()创建线程,操作系统的创建原语是fork()还是creat()?
- 北方人思想为什么落后_广西人为什么很少到北方打工?
- LaTeX:equation, aligned 书写公式换行,顶部对齐
- innodb_flush_method理解【转】
- 公司台湾主站的url重写
- 4-什么是Image和container
- PC,移动端H5实现实现小球加入购物车效果