Qt中用qSort()快速排序例程

8 篇文章 0 订阅

Qt中用qSort()快速排序例程进行排序

void MainWindow::on_pushButton_2_clicked()
{
    //QStringList 自动排序去重
    QStringList  Read_Time;
    //产生[0,10)中的随机数10个
    qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
    for(int i=0; i<10; i++)
    {
        QString num;
        int test =qrand()%10;
        //保留2位数,不足的补零
        num = num.sprintf("%02d",test);
        Read_Time<<num;
    }

    //显示产生的随机数
    qDebug()<<" start Read_Time = "<<Read_Time;

    //自动排序的处理过程
    QSet<QString> set = Read_Time.toSet();//是字符串链表内容不重复
    qDebug()<<" set = "<<set;
    QList<QString> list = QList<QString>::fromSet(set);//链表内容重新排序。默认递增
    qDebug()<<" list = "<<list;
    //调用函数排序
    qSort(list);
    qDebug()<<"Read_Time"<<list<<"size =" <<list.size();
    //覆盖原来的链表内容
    Read_Time = list;
    qDebug()<<" OFF Read_Time = "<<Read_Time;

}

运行结果:
start Read_Time = (“02”, “01”, “06”, “06”, “08”, “04”, “06”, “00”, “03”, “04”)
set = QSet(“08”, “00”, “01”, “02”, “03”, “04”, “06”)
list = (“08”, “00”, “01”, “02”, “03”, “04”, “06”)
Read_Time (“00”, “01”, “02”, “03”, “04”, “06”, “08”) size = 7
OFF Read_Time = (“00”, “01”, “02”, “03”, “04”, “06”, “08”)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值