/*删除数组中特定值的元素*/
算法设计思想:
代码设计:
#include<bits/stdc++.h>
using namespace std;
#define Max 50
struct Sqlist{
int a[Max]={5,2,0,1,3,1,4,1,1,4};
int length=10;
};
void deletelist(Sqlist &L,int x)
{
int k=0;
for(int i=0;i<L.length;i++)
{
if(L.a[i]==x)
k++;
else
a[i-k]=a[i];
}
L.length=L.length-k;
}
int main()
{
Sqlist L;
for(int i=0;i<L.length;i++)
cout<<L.a[i]<<" ";
cout<<endl;
deletelist(L,1);
for(int i=0;i<L.length;i++)
cout<<L.a[i]<<" ";
cout<<endl;
return 0;
}
时间复杂度和空间复杂度:
时间复杂度O(n);
空间复杂度O(1);