删除有序序列重复元素(数组)
时间限制: 1s
类别: DS:数组与链表->数组
问题描述
使用数组编程:
一个有序的整数序列,其中有重复元素,请删除重复元素。
注意:本题的序列是有序的,要利用到这个特性,从而降低时间复杂度。
输入说明
第一行输入一个整数n(0<=n<=100)
第二行输入n个整数,表示有序序列中的元素。输入时已有序。
输出说明
输出删除重复元素后的序列。数字之间以一个空格分隔。
#include<iostream>
using namespace std;
int main()
{
int n;
int k=1;
cin >> n;
int a[101];
int b[101];
bool found=0;
for(int i=0; i<n; ++i)
cin>>a[i];
for(int i=0; i<n-1; ++i)
{
if(a[i]!=a[i+1])
{
b[k++]=a[i+1];
}
}
b[0]=a[0];
for(int i=0; i<k; ++i)
{
cout<<b[i];
if(i<(k-1)) cout<<" ";
}
return 0;
}