第12周 数据结构和算法 线性表-2 插入、删除、定位运算

问题及代码:

//线性表的存储结构,三种运算 

// 插入运算 
void InsertSql(Linear_list L,int &n,int i,ElemType x)
{
 if (i<1 || i>(n+1))   
   error("插入的值非法");
 else 
 for(j=n;j<=i;j--)
  {
  	L[j+1] = L[j]; //插入的位置后移 
  	L[i]= x;  //插入x 
  	n = n+1;  //增加长度 
  }
  
// 删除运算 
  void Deletesql(Linear_list V,int &n,int i)
{
if(i<1 || i>n)
  error("没有这个元素");
else
{
 for(j=i+1;j<=n;j++)
  {
  	L[j-1] = L[j];
  	n = n-1; 
  }
}

// 定位运算 
int Locatesql(Linear_list,ElemType item)
 {
 	i=0; 
 	while(i<=0 && L[i] != item)
 	  i = i+1;
 	if(i<=n)
 	  return i; //查找成功,返回信息i 
 	  else 
 	  return 0; //查找失败,返回信息0; 
 }


你可能感兴趣的:(C语言,算法与结构)