码迷,mamicode.com
首页 > 其他好文 > 详细

顺序表

时间:2019-12-30 11:53:05      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:print   i++   位置   for   insert   node   void   while   eof   

typedef struct LNode *List;
struct LNode{
    int Data[MAXSIZE];
    int Last;//最后一个,表长为last+1
};
struct LNode L;
List PtrL;

List MakeEmpty(){
    List PtrL;
    PtrL = (List)malloc(sizeof(struct LNode));
    PtrL->Last = -1;
    return PtrL;
}

int Find(int X, List PtrL){
    int i = 0;
    while(i <= PtrL->Last && PtrL->Data[i]!= X)
        i++;
    if(i > PtrL->Last)
        return -1;
    else
        return i;
}

void Insert(int X,int i,List PtrL){
    int j;
    if(PtrL->Last == MAXSIZE-1){
        printf("表满");
        return;
    }
    if(i < 1 || i > PtrL->Last+2){
        printf("位置错误");
        return;
    }
    for(j=PtrL->Last; j>=i-1; j--){
        PtrL->Data[j+1] = PtrL->Data[j];
    }
    PtrL->Data[i-1] = X;
    PtrL->Last++;
    return;
}
//删除,删第i个位置的元素
void Delete(int i,List PtrL){
    int j;
    if(i < 1 || i > PtrL->Last+1){
        printf("位置错误");
        return;
    }
    for(j=i-1; j<PtrL->Last; j++){
        PtrL->Data[j] = PtrL->Data[j+1];
    }
    PtrL->Last--;
    return;
}

顺序表

标签:print   i++   位置   for   insert   node   void   while   eof   

原文地址:https://www.cnblogs.com/carpe-diem123/p/12118501.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!