pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除

6-1 顺序表的插入操作

int ListInsert(SqList &L,int i,ElemType e){
 if(i<=0||i>L.length+1||L.length>10)return 0;

for(int j=L.length;j>=i;j--)
{         
    L.elem[j]=L.elem[j-1];    
}
    L.elem[i-1]=e;
    L.length++;
    return 1;

}
//这是这个答案

pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第1张图片

 pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第2张图片

6-2 顺序表的删除操作

int ListDelete(SqList &L,int i){
    if(i<=0||i>L.length)return 0;
    for(int j=i-1;j

pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第3张图片

pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第4张图片

 pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第5张图片

 6-3 单链表的查询插入删除

int  Get_LinkList(LinkList H, ElemType key)//H为单链表的头指针,key为待查找的值;
{
    int num=1;
    for(LinkList cur=H->next;cur;cur=cur->next,num++)if(cur->data==key)return num;
}

Status ListInsert(LinkList &H,int i,ElemType e)//H为单链表的头指针,i为插入位置,e为新插入的值;
{
    LinkList p,cur;
    cur=H;
    p = (LinkList)malloc(sizeof(LNode));
    p->data=e;
    for(int j=1;jnext;
    p->next=cur->next;
    cur->next=p;
    return 1;
}
Status ListDelete(LinkList &H,int i)//H为单链表的头指针,i为删除位置
{
    LinkList p=H;
    if(!H->next||i==0)return 0;
    for(int j=1;jnext;
    p->next=p->next->next;
    return 1;
}

pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第6张图片

pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第7张图片

pta6-1 顺序表的插入操作 6-2 顺序表的删除操作 6-3 单链表的查询插入删除_第8张图片

 懒得截图了

你可能感兴趣的:(linq,蓝桥杯,散列表)