데이터 구조의 순서 표 생 성, 삽입, 삭제, 포 지 셔 닝
5660 단어 데이터 구조
#define INIT_SIZE 100
#define INCREMENT 10
typedef struct
{
int *elem;
int length;
int listsize;
}SqList;
int SqListInit(SqList *L)
{
L->elem=(int *)malloc(INIT_SIZE*sizeof(int)); //
if(!L->elem)
return 0;
L->length=0;
L->listsize=INIT_SIZE; //
return 1;
}
int SqListInsert(SqList *L,int i,int e)
{
int j;
int *newbase;
if(i<1 || i>L->length+1) //
return 0;
if(L->length>=L->listsize) //
{
//
newbase=(int *)realloc(L->elem,(L->listsize+INCREMENT)*sizeof(int));
if(!newbase) //
return 0;
L->elem=newbase;
L->listsize +=INCREMENT;
}
for(j=L->length-1;j>=i-1;j--) //
{
L->elem[j+1]=L->elem[j];
}
L->elem[i-1]=e; // e
++L->length; // 1
return 1;
}
int SqListDelete(SqList *L,int i,int *e)
{
int j;
if(i<1 || i>L->length) //
return 0;
*e=L->elem[i-1]; // e
for(j=i-1;jlength-1;j++) //
{
L->elem[j]=L->elem[j+1];
}
--L->length; // 1
cout<<" "<" "<<*e<<" "<return 1;
}
int SqListLocate(SqList *L,int e)
{
int i;
while(i<=L->length&&L->elem[i-1]!=e)
i++;
if(i<=L->length)
{
cout<<" "<" "<return 1;
}
else
{
cout<<" "<" "<return 0;
}
}
소스 코드 링크http://download.csdn.net/detail/qq_28397005 / 9812282 전재 성명 해 주 십시오. 감사합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.