首页 > 代码库 > 数据结构之线性结构

数据结构之线性结构

 

线性结构

什么是线性表

    零或多个数据元素的有限序列

技术分享

技术分享

技术分享

技术分享

 

技术分享

技术分享

技术分享

技术分享

技术分享

 技术分享

技术分享

线性表的基本操作
//线性表的基本操作


Init_List()           //初始化
Get_List(L,i)         //取表元  
Locate_List(L,x)    //按值查找
Lenth_List(L)        //求长度
Insert_List(L,i,x)   //插入
Delete_List(L,i)    //删除
//顺序表的实现

#define ListSize 100 //线性表的容量
typedef int DataType;
typedef struct
{
     DataType data[ListSize];   //存储线性表中的元素
    int length;         //线性表的当前表长
}SqList;
 
//初始化运算

void Init_SqList(SqList *L)
{   
int n,i;   printf(“请输入线性表的长度:");    scanf("%d",&n);   L->length=n;   for(i=0;i<=n-1;i++)
   {   printf(
"请输入第%d个数",i);   scanf("%d",&L->data[i]);  } }

 

技术分享

插入运算

void Insert_SqList(SqList *L,int i,int x)
{
int j; if(L->length==MAX)
  { printf(
"表满"); return ; } if(i<0||i>L->length)
  { printf(
"插入位置错"); return ; } for(j=L->length-1;j>=i;j--)
  { L
->data[j+1]=L->data[j]; } L->data[i]=x; L->length++; }

技术分享

删除操作

 

//删除

void Delete_SqList(SqList *L,int i)
{
int j; if(L->length==0)
  { printf(
"表空"); return; } if(i<0||i>L->length)
  { printf(
"第%d个元素不存在",i); return; } for(j=i+1;j<L->length;j++)
  { L
->data[j-1]=L->data[j]; } L->length--;
}
技术分享

 


 

数据结构之线性结构