下列算法完成在顺序表 SeqL 的第 i 个位置插入元素 x,正常插入返回 1,否则返回 0 或-1, 请在空的下划线上填写合适的内容完成该算法

下列算法完成在顺序表 SeqL 的第 i 个位置插入元素 x,正常插入返回 1,否则返回 0 或-1,

int seq_ins(SeqList *SeqL,int i, DataType x)  
{    	
	int j;       
	if  ( SeqL->len ==maxsize )               /*表满*/      
	{  
		printf("the list is full\n");         
		return 0;     
	}      
	else if (i<1||i> SeqL->len+1)             /*位置不对*/      
	{     
		printf("the position is invalid\n ");            
		return -1;     
	}     
	else{                           /*正常插入*/     
		for (j=SeqL->len;j>=i;j--)           
		SeqL->data[j+1]= SeqL->data[j];  /*元素后移*/         
		SeqL->data[i]=x;  /*插入元素*/         
		(SeqL->len)++;              /*表长加 1*/        
 		return 1;       
 	} 
}

 

你可能感兴趣的:(数据结构)