`
touchmm
  • 浏览: 1038476 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

数据结构——线性表

 
阅读更多

#include<stdio.h>
#define MaxSize 50
typedef char ElemType;
struct List
{
ElemType list[MaxSize];
int size;
}
setnull(struct List *p)//置空
{
p->size=0;

}
int length(struct List *p)//求长度
{
return (p->size);
}
ElemType get(struct List *p,int i)//取第i歌节点
{
if(i<1&&i>p->size)
printf("位置参数error!/n");
else
return(p->list[i-1]);
}
int locate(struct List *p,ElemType x)//定位
{
int i=0;
while(i<p->size&&p->list[i]!=x) i++;
if(i==p->size)
return(-1);
else
return(i+1);

}
void insert(struct List *p,ElemType x,int i)//插入结点
{
int j;
if(i<1||i>p->size+1)
printf("位置参数error!/n");
else
{
p->size++;
for(j=p->size-1;j>=i;j--)
p->list[j]=p->list[j-1];
p->list[j]=x;
}

}
void del(struct List *p,int i)
{
int j;
if(i<1&&i>p->size+1)
printf("位置参数error!/n");
else
{
for(j=i-1;j<p->size-1;j++)//结点前移
p->list[j]=p->list[j+1];
p->size--;

}
}
display(struct List *p)
{
int j;
if(p->size==0)
printf("Empty rable!/n");
else
{
printf("顺序表:/n");
if(p->size==1)
printf("%c",p->list[p->size]);
else
{
for(j=0;j<p->size-1;j++)
printf("%c->",p->list[j]);
printf("%c",p->list[j]);
}
printf("/n");
}
}

main()
{
struct List L;
setnull(&L);
insert(&L,'a',1);
insert(&L,'s',1);
insert(&L,'f',2);
insert(&L,'d',1);
insert(&L,'z',3);
insert(&L,'c',2);
display(&L);
printf("值%c位置:%5d/n:",'a',locate(&L,'a'));
printf("delete the second element~/n");
del(&L,2);
display(&L);
printf("delete the first element~/n");
del(&L,1);
display(&L);
}

分享到:
评论

相关推荐

    算法与数据结构二(数据结构——线性表).doc

    算法与数据结构二(数据结构——线性表).doc

    数据结构——线性表的实现.zip

    本资料包“数据结构——线性表的实现.zip”着重介绍了线性表的两种常见实现方式:链表和数组。 1. 链表实现: 链表是一种物理存储单元非连续、非顺序的存储结构,它通过节点间的指针链接来表示元素之间的逻辑关系...

    数据结构——线性表分享.pdf

    数据结构——线性表分享 一、顺序存储结构 在数据结构中,顺序存储结构是一种常用的存储方式,它将线性表的每个元素存储在一块连续的存储空间中。这种存储方式的优点是可以快速访问任意一个元素,但缺点是插入或...

    数据结构——线性表的基本操作

    数据结构——线性表的基本操作 数据结构是计算机科学中最基础和最重要的概念之一,它是指计算机中存储、组织和处理数据的一种方法。线性表是数据结构中最基本和最常用的数据结构之一,它是一种顺序存储的数据结构,...

    数据结构——线性表顺序存储结构(C++代码)

    线性表是数据结构中最基础且重要的概念之一,它是由n(n≥0)个相同类型元素构成的有限序列。顺序存储结构则是线性表的一种常见实现方式,它将线性表中的元素按照一定的顺序存放在一块连续的内存区域中。这种存储...

    数据结构——线性表操作

    线性表是数据结构中的基础概念,它是一个包含有限个数据元素的有序序列。线性表的特点在于它的元素之间存在着一对一的关系,每个元素除了表头元素外,都有一个唯一的直接前驱,除了表尾元素外,都有一个唯一的直接...

    数据结构——线性表类模板

    线性表是计算机科学中一种基础且重要的数据结构,它是由n(n≥0)个相同类型元素构成的有限序列。在C++编程语言中,类模板被广泛用于实现抽象数据类型,它允许我们创建通用的数据结构,适用于多种数据类型。本主题将...

    数据结构——线性表的实现

    线性表是计算机科学中一种基础且重要的数据结构,它是由n(n≥0)个相同类型元素构成的有限序列。在数据结构的学习中,理解并掌握线性表的逻辑结构及其实现方式对于后续深入学习其他复杂数据结构至关重要。 线性表...

    数据结构——线性表(选择题).docx

    线性表是数据结构中的一种基础类型,它是由n(n&gt;=0)个相同类型元素构成的有限序列。在这个序列中,每个元素都有一个直接前驱(除了第一个元素)和一个直接后继(除了最后一个元素),并且这个序列可以为空。线性表...

    数据结构——线性表的操作

    线性表的操作:线性表的初始化,线性表元素的查找,线性表元素的插入,线性表元素的删除,打印线性表......

    数据结构C语言实现系列——线性表

    本文主要介绍如何使用C语言来实现一种基本的数据结构——线性表。线性表是数据结构中最基础且最常用的一种逻辑结构,它是由n(n≥0)个类型相同的元素组成的有限序列,通常包括顺序表和链表两种实现方式。本文将重点...

    数据结构第二章课件——线性表

    数据结构第二章课件——线性表 本资源主要介绍了线性表的定义和抽象数据类型,线性表的顺序存储结构和链接存储结构,以及每种线性表操作在顺序存储结构和链接存储结构上的具体实现。 1. 线性表的定义和抽象数据...

    数据结构实验——线性表的插入、删除.docx

    数据结构实验报告——线性表的插入、删除 在计算机科学领域中,数据结构是一种组织和存储数据的方式,以便更高效地使用计算机资源。线性表是一种基本的数据结构,广泛应用于各种计算机应用程序中。线性表的插入和...

    数据结构实验报告——线性表.pdf

    《数据结构实验报告——线性表》探讨了在互联网领域中数据结构的基础应用,特别是针对线性表这一重要概念。线性表是一种基础的数据结构,它由有限个相同类型元素构成的有序序列。本实验报告详细阐述了如何利用C++...

    数据结构算法代码实现——线性表的顺序表示与实现(二) 定义线性表节点的结构.pdf

    数据结构算法代码实现——线性表的顺序表示与实现(二)定义线性表节点的结构 本资源主要介绍了数据结构中线性表的顺序表示和实现,包括线性表的定义、顺序存储结构、基本操作等内容。 线性表的定义 线性表是一种...

    北邮数据结构实验报告——线性表.docx

    《北邮数据结构实验报告——线性表》 线性表是计算机科学中基础且重要的数据结构之一,它由相同类型的元素构成的有序序列。在这个实验中,学生被要求使用C++语言,通过循环链表来实现约瑟夫问题的求解。约瑟夫问题...

    数据结构实验——线性表子系统

    线性表是数据结构中最基础且重要的概念之一,它是由n(n≥0)个相同类型元素组成的有限序列。在这个实验中,我们主要关注线性表的链式存储结构,特别是字符型的单链表。实验的目标是理解线性表的特点,掌握顺序存储和...

Global site tag (gtag.js) - Google Analytics