设计算法,在数组r[n]中删除所有元素值为x的元素,要求时间复杂性为O(n);空间复杂性为O(1)。
#include<iostream>
using namespace std
;
int Deletex(int r
[],int n
,int x
)
{
int j
=0,k
=0;
for(int i
=0;i
<n
;i
++)
{
if(r
[i
]!=x
)
{
r
[j
]=r
[i
];
j
++;
}
else
k
++;
}
return k
;
}
int main()
{
int r
[1000];
int n
;
cin
>>n
;
for(int i
=0;i
<n
;i
++)
cin
>>r
[i
];
int x
;
cin
>>x
;
int m
=Deletex(r
,n
,x
);
for(int i
=0;i
<n
-m
-1;i
++)
cout
<<r
[i
]<<" ";
cout
<<r
[n
-m
-1];
return 0;
}
转载请注明原文地址:https://blackberry.8miu.com/read-32364.html