码迷,mamicode.com
首页 > 编程语言 > 详细

研究了一下CSDN 私信的排序,我也是醉了

时间:2015-05-19 00:50:49      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:排序算法   csdn   消息   

一直感觉CSDN的通知和私信总是看起来怪怪的,主页提示有私信,打开却看不到,有时候向后翻几页又能看到。

今天又遇到这种情况了,于是研究了一下,刚开始还是没找到规律,直到看到“3天前”的消息排在最后一个“3年前”的消息之后,突然就明白了,于是翻到最开始,发现“11个月前”排在第一个,紧跟着是“1年前”的,然后是“2年前”的,再然后是“3年前”,再然后是“3天前”,再然后是“4天前”,直到“26天前”,紧跟之后的是“3个月前”,再之后是“4个月前”。

技术分享

我是奔放的第一张图片

技术分享
我是理性的第二张图片

对算法很敏感的我很想了解一下这是怎样的一种排序算法?难不成是按照时间字符串排序的?于是对“11个月前”,“2年前”,“3年前”,“3个月前”,“3天前”和“4天前”几个字符串按照字符串升序排了一下序:

void print(const std::string& e)
{
    std::cout << e << std::endl;
}

int main(int argc, char* argv[])
{
    char *ssts[] = { "11个月前", "3年前", "2年前", "3个月前", "3天前", "4天前" };

    std::vector<std::string> cpths(ssts, ssts + 6);

    std::sort(cpths.begin(), cpths.end(), std::less<std::string>());
    std::for_each(cpths.begin(), cpths.end(), print);  

    return 0;
}
我是性感的源代码

排序后的结果是:
“11个月前”
“2年前”
“3个月前”
“3年前”
“3天前”
“4天前”

居然对上了,你怎么看?

研究了一下CSDN 私信的排序,我也是醉了

标签:排序算法   csdn   消息   

原文地址:http://blog.csdn.net/orbit/article/details/45830835

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!