makefile和顺序表部分

|  1 #include "seq.h"                           

|  2                                            

|  3 //申请空间                                 

|  4 seq_create_seqlist()                       

|  5 {                                          

|  6     seq_p S=(seq_p)malloc(sizeof(seq_list));

|  7     if(S=NULL)                             

|  8     {                                      

|  9         return NULL;                       

| 10     }                                      

| 11     bzero(S,sizeof(seq_list));             

| 12     return S;                              

| 13 }                                          

| 14                                            

| 15 //判空                                     

| 16 int empty_seq(seq_p S)                     

| 17 {                                          

| 18     if(S==NULL)                            

| 19     {                                      

| 20         printf("NULL\n");                  

| 21         return -2;                         

| 22     }                                      

| 23     return S->len==0?1:0;                  

| 24 }                                          

| 25                                            

| 26 //判满                                     

| 27 int full_seq(seq_p S)                      

| 28 {                                          

| 29     if(S=NULL)                             

| 30     {                                      

| 31         printf("NULL\n");                  

| 32         return -2;                         

| 33     }                                      

| 34     return S->len==MAX?1:0;                

| 35 }                                          

| 36                                            

| 37 //头插                                     

| 38 void insert_head(seq_p S,int data)         

| 39 {                                          

| 40                                            

| 41     if(S=NULL)                             

| 42     {                                      

| 43         printf("NULL\n");                  

| 44         return -2;                         

| 45     }                                      

| 46     for(int i=1;i<S->len;i++)              

| 47     {                                      

| 48         S->arr[i]=S->arr[i-1];             

| 49     }                                      

| 50     S->arr[0]=data;                        

| 51     S->len++;                              

| 52     return 0;                              

| 53 }                                          

| 54                                            

| 55 //尾差                                     

| 56 void insert_tail(seq_p S,int data)         

| 57 {                                          

| 58     if(S==NULL)                            

| 59     {                                      

| 60         printf("NULL\n");                  

| 61         return -2;                         

| 62     }                                      

| 63                                            

| 64     if(full_seq(S))                        

| 65     {                                      

| 66         printf("full\n");                  

| 67         return -2;                         

| 68     }                                      

| 69     S->arr[S->len]=data;                   

| 70     S->len++;                              

| 71     return 0;                              

| 72 }                                          

| 73                                            

| 74 //头删                                     

| 75 int del_head(seq_p S)                      

| 76 {                                          

| 77                                            

| 78     if(S==NULL)                            

| 79     {                                      

| 80         printf("NULL\n");                  

| 81         return -2;                         

| 82     }                                      

| 83     if(empty_seq(S))                       

| 84     {                                      

| 85         printf("empty\n");                 

| 86         return -2;                         

| 87     }                                      

| 88                                            

| 89     for(i=0;i<len-1;i++)                   

| 90     {                                      

| 91         S->arr[i]=S->arr[i+1];             

| 92     }                                      

| 93     S->len--;                              

| 94     return 0;                              

| 95 }                                          

| 96                                            

| 97 //尾删                                     

| 98 int del_tail(seq_p S)                      

| 99 {                                          

|100     if(S==NULL)                            

|101     {                                      

|102         printf("NULL\n");                  

|103         return -2;                         

|104     }                                      

|105                                            

|106     if(empty_seq(S))                       

|107     {                                      

|108         printf("empty\n");                 

|109         return -2;                         

|110     }                                      

|111     S->len--;                              

|112     return 0;                              

|113 }                                          

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值