선형 테이블 순서 저장 소

2419 단어 데이터 구조
시간 복잡 도 효율
O(1) > O(logn) > O(n) > O(nlogn) > O(n^2) > O(n^3) > O(2^n) > O(n!) > O(n^n) 
선형 테이블 순서 저장 소
//    ----     
#include 
#include 

#define MAXSIZE 1024

typedef int ElementType;
typedef struct
{
	ElementType data[MAXSIZE];			//          
	int length;					//         
}SqList;

SqList * InitList(SqList * L);				//       (  ) 
int GetElem(SqList * L, int i, ElementType * e); 	//      L i    e 
int ListInsert(SqList * L, int i, ElementType e);	//      
int ListDelete(SqList * L, int i, ElementType * e);	//     
int PrintList(SqList * L); 				//       
int ClearList(SqList * L); 			        //       
int DestoryList(SqList * L);			        //       

int main()
{	
	SqList * L = NULL;
	L = InitList(L);
	if (L!=NULL) {
		printf("      (  )  
"); } ListInsert(L, 1, 999); ListInsert(L, 2, 888); ListInsert(L, 3, 777); PrintList(L); printf("
...
"); ClearList(L); PrintList(L); } // ( ) SqList * InitList(SqList * L) { L = (SqList *)malloc(sizeof(SqList)); if (L!=NULL) { L->length = 0; } return L; } // L i e int GetElem(SqList * L, int i, ElementType *e) { if (L->length == 0 || iL->length) { return 0; } *e = L->data[i-1]; return 1; } // int ListInsert(SqList * L, int i, ElementType e) { if (L->length == MAXSIZE) { // return 0; } if (i<1 || i>L->length + 1) { return 0; } if (i<=L->length) { for (int k = L->length - 1; k>=i-1; k--) { L->data[k+1] = L->data[k]; } } L->data[i-1] = e; L->length++; return 1; } // int ListDelete(SqList * L, int i, ElementType *e) { if (L->length == 0) { return 0; } if (i<1 || i>L->length) { return 0; } *e = L->data[i-1]; if (ilength) { for (int k = i; klength;k++) { L->data[k-1] = L->data[k]; } } L->length--; return 1; } // int PrintList(SqList * L) { if (L->length == 0) { printf(" !
"); } for (int i = 0; i< L->length; i++) { printf("a[%d]=%d\t", i, L->data[i]); if ((i + 1) % 5 == 0) { printf("
"); } } return 1; } // int ClearList(SqList * L) { L->length = 0; return 1; } // int DestoryList(SqList * L) { free(L); return 1; }

좋은 웹페이지 즐겨찾기