단일 체인 시트 의 수립 과 삭제, 검사 코드 및 설명
3121 단어 데이터 구조
//--- ----
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
//1.
int Initlist(LinkList L)
{
L=NULL;
return OK;
}
// ( )
int Initlist(LinkList L)
{
L=(LNode*)malloc(sizeof(Lnode));//
L->next=NULL;
return OK;
}
//
int length_L(LinkList L)
{
i=0;
p=L->next;// p
while(p)// p ,
{
i++;
p=p->next;
}
return i;
}
//3. I
Status GetElem_L(LinkList L,int i,ElemType &e)
//L
{
p=L->next;//p
j=1;
while(p&&jnext;// p
j++;// J 1, J=I
}
if(!p||j>i)// , ERROR
return ERROR;
e=p->data;// e, 。
return OK;
}
//4. p
q=(LinkList)malloc(sizeof(LNode))
q->data=x;//
q->next=p->next;//(1)
p->next=q;//(2)
//5. : L I e
Status Listinsert_L(LinkList &L,int i,ElemType e)
{
p=L;
j=0;
while(p&&jnext;
j++;
}
if(!p||j>i-1)// I , ERROR
return ERROR;
s=(LinkList)malloc(sizeof(LNode));//
s->data=e;
s->next=p->next;//(1)
p->next=s;//(2)
return OK;
}
//6. : P
// ,
Status ListDelete_L(LinkList &L,int i,ElemType &e)
// L , i , e
{
p=L;
j=0;
while(p->next&&jnext;
j++;
}
if(!(p->next)||j>i-1)
return ERROR;
p->next=p->next->next;//
e=q->data;// e
free(q);//
return OK;
}
//7. : , ,
// : , 。
// 。( )
//
L.(LinkList)malloc(sizeof(LNode));
L->next=NULL;
r=L;// r ,
// , :
p=(LinkList)malloc(sizeof(LNode));//
scanf(&p->data);//
p->next=NULL;//
r->next=p;// r ,
r=r->next;
// : ,
//
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
// ,
p=(LinkList)malloc(sizeof(LNode));//
scanf(&p->data);//
p->next=L->next;//
L->next=p;//
// :( )
void CreateList_L(LinkList &L,int n)
{
L=(LinkList)malloc(sizeof(LNode));//
L->next=NULL;
for(i=n;i>0;i--)
{
p=(LinkList)malloc(sizeof(LNode));//
scanf(&p->data);//
p->next=L->next;// ,
L->next=p;//
}
}
//
// La Lb
void MergeList_L(LinkList &La,LinkList &Lb,LinkList &Lc)
{
pa=La->next;// La Lb
pb=Lb->next;
Lc=pc=La;// La
while(pa&&pb)//
{
if(pa->data<=pb->data)// La->data<=pb->data, La
{
pc->next=pa;// La , La Lb
pc=pa;// La
pa=pa->next;
}
else
{
pc->next=pb;
pc=pb;
pb=pb->next;
}
pc->next=pa?pa:pb;// , LA , LB
//
//if(pa)
//pc->next=a;
//else pc->next=pb
free(Lb);// Lc LA , LB
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.