随机存储线性表插入和得到
Status GetElem(SqList L, int i, ElemType *e)
{
if( L.length==0 || i<1 || i>L.length )
{
return ERROR;
}
*e = L.data[i-1];
{
if( L.length==0 || i<1 || i>L.length )
{
return ERROR;
}
*e = L.data[i-1];
return OK;
}
}
Status ListInsert(SqList *L, int i, ElemType e)
{
int k;
{
int k;
if( L->length == MAXSIZE ) // 顺序线性表已经满了
{
return ERROR;
}
if( i<1 || i>L->length+1) // 当i不在范围内时
{
return ERROR;
}
if( i <= L->length ) // 若插入数据位置不在表尾
{
/* 将要插入位置后数据元素向后移动一位 */
for( k=L->length-1; k >= i-1; k-- )
{
L->data[k+1] = L->data[k];
}
}
{
return ERROR;
}
if( i<1 || i>L->length+1) // 当i不在范围内时
{
return ERROR;
}
if( i <= L->length ) // 若插入数据位置不在表尾
{
/* 将要插入位置后数据元素向后移动一位 */
for( k=L->length-1; k >= i-1; k-- )
{
L->data[k+1] = L->data[k];
}
}
L->data[i-1] = e; // 将新元素插入
L->length++;
L->length++;
return OK;
}
}

浙公网安备 33010602011771号