0
点赞
收藏
分享

微信扫一扫

《剑指Offer》学习记录—算法题:数组中的重复数字

橙子好吃吗 2022-01-22 阅读 82
面试

题目

示例

最简单的方法,排序后遍历:

#include <QDebug>
#include <QRandomGenerator>

//随机赋值,且使一些值重复
void randomAssignment(QList<int> & list,int maxValue)
{
int size = list.size();
for(int i = 0;i < size;++i)
{
list[i] = QRandomGenerator::global()->bounded(maxValue);
}
int repetitionNumber = QRandomGenerator::global()->bounded(1,size/3);//重复元素个数
for(int i = 0;i < repetitionNumber;++i)
{
list[QRandomGenerator::global()->bounded(0,size)] = list[QRandomGenerator::global()->bounded(0,size)];
}
}

int main(int argc, char *argv[])
{
int n = 100;
QList<int> list;
list.resize(10);

randomAssignment(list,n);

qDebug()<<list;
std::sort(list.begin(),list.end());
qDebug()<<list;

for(int i = 0;i < (list.size() - 1);++i)
{
if(list.at(i) == list.at(i+1))
qDebug()<<"重复数字:"<<list.at(i);
}
}

举报

相关推荐

0 条评论