标签:int double C++ ++ length intArray array include
#include <iostream>
#include <vector>
#include <set>
#include<iomanip>
#include <algorithm>
using namespace std;
void IntArrayRemoveRepeat(int array[], int length)
{
set<int> intArray;
for (int i = 0; i < length; ++i)
{
intArray.insert(array[i]);
}
set<int>::iterator it;
for (it = intArray.begin(); it != intArray.end(); ++it)
{
cout << *it << endl;
}
}
void DoubleArrayRemoveRepeat(double array[], int length)
{
set<double> doubleArray;
for (int i = 0; i < length; ++i)
{
for (int j = i + 1; j < length; ++j)
{
//对于double类型的数组,个人认为利用差值法比较好一点,仅供参考。
if (fabs(array[i] - array[j]) <= 0.00001)
{
array[j] = array[i];
}
}
doubleArray.insert(array[i]);
}
for (set<double>::iterator it = doubleArray.begin(); it != doubleArray.end(); ++it)
{
cout << *it << endl;
}
}
int main()
{
cout << "*************int 类型*************" << endl;
int array1[15] = { 5, 6, 7, 7, 8, 8, 8, 9, 9, 9, 10, 11, 11, 13, 15 };
int length1 = sizeof(array1) / sizeof(array1[0]);
IntArrayRemoveRepeat(array1, length1);
cout << "*************double 类型*************" << endl;
double array2[8] = { 5.02, 5.02, 5.08, 4.5, 3.5, 3.500001, 3.530, 3.550001};
int length2 = sizeof(array2) / sizeof(array2[0]);
DoubleArrayRemoveRepeat(array2, length2);
//double array2 = 3.500001;
return 0;
}
标签:int,double,C++,++,length,intArray,array,include 来源: https://www.cnblogs.com/xbnxopen/p/15102323.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。