首页 > 代码库 > 线性表1
线性表1
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<malloc.h> 4 5 #define MAXSIZE 20 6 #define OK 1 7 #define ERROR 0 8 #define TRUE 1 9 #define FALSE 010 typedef int Status;11 12 typedef int ElemType;13 14 typedef struct15 {16 ElemType data[MAXSIZE];17 int length;18 }SqList;19 20 /*获得元素*/ 21 Status GetElem( SqList L, int i, ElemType *e )22 {23 if( L.length=0 || i<1 || i>L.length)24 return ERROR;25 *e = L.data[i-1];26 return OK;27 }28 29 Status InsertElem(SqList *L, int i, ElemType e)30 {31 if(L->length == MAXSIZE) /*满了插不进去*/32 return ERROR;33 if(i<1 || i>L->length+1) /*i不在范围内*/34 return ERROR;35 int k;36 if(i<L->length) /*插入位置不在表尾*/37 {38 for(k=L->length-1; k>=i-1;k--) 39 L->data[k+1] = L->data[k];40 }41 42 L->data[i-1] = e; 43 L->length++;44 return OK;45 }46 47 Status DeleteElem(SqList *L, int i)48 {49 if(L->length==0)50 return ERROR;51 if(i>L->length || i<1)52 return ERROR;53 54 int k;55 for(k=i-1;k<L->length-1;k++)56 {57 L->data[k] = L->data[k+1];58 }59 L->length--;60 return OK;61 }62 63 /*int main()64 {65 int i ;66 SqList *L = malloc(sizeof(SqList)); //头文件:malloc.h/stdlib.h 67 L->length = 0; //少了初始化的函数,只能自己设置长度为0 68 for(i=1;i<6;i++)69 {70 InsertElem(L,i,i);71 //insert函数里面已经有了length++了。 72 }73 return 0;74 }75 */
基本的插入删除。顺序存储结构
线性表1
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。