首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

顺序线性表的插入有关问题

2012-07-27 
顺序线性表的插入问题当数据插入的时候,如果申请的内存空间没有了,重新申请更大空间时,为什么不用初始化插

顺序线性表的插入问题
当数据插入的时候,如果申请的内存空间没有了,重新申请更大空间时,为什么不用初始化插入位置前的那段数据
例如:

C/C++ code
Status  ListInsert(SqList &L,LONG index,ElemType e)   //初始条件:线性表L已存在,1<=i<=ListLength(L)+1   //操作结果:在L中的第i个元素之前插入新的数据元素e,L的长度加1   {       if((index<1) || (index>L.length+1)){           cout<<"插入的位置不合理"<<endl;           return ERROR;       }         if(L.length>=L.size){           ElemType *newbase=(ElemType*)realloc(L.elem,               (L.size+LISTINCREMENT)*sizeof(ElemType));           if(newbase==NULL){               cout<<"增量存储空间分配失败"<<endl;               exit(OVERFLOW);           }           else{               L.elem=newbase;               L.size+=LISTINCREMENT;           }                      }         //移动元素       int i=L.length;       for(;i>index-1;i--)           L.elem[i]=L.elem[i-1];              //插入元素       L.elem[index-1]=e;         //修改表长       L.length++;       return OK;   }   


[解决办法]
可你知道relloac的工作原理吗

热点排行