码迷,mamicode.com
首页 > 其他好文 > 详细

线性表1

时间:2014-12-24 06:22:08      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

 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 0
10 typedef int Status;
11 
12 typedef int ElemType;
13 
14 typedef struct
15 {
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

标签:

原文地址:http://www.cnblogs.com/mighty/p/4181497.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!