众所周知,在c++中,sort是一个非常好用的排序函数,方便使用、可自定义的特性,让众多oier如我不能自拔。但是在自定义时也有一些大坑需要注意(敲黑板),下面就是oi入门的第不知道多少课,大家认真听讲,如要退学请在右上角找到小叉老师交一下学费。(反正是自己看干什么这样啊sjb)
↑
“简单说,在comp中,当参数1和参数2等价时,必须返回false.”(不然会运行时错误,超神奇)
“网上的一个较好的解读是:严格是说在判断的时候会用"<",而不是"<=",弱排序是因为,一旦"<"成立便认为存在"<"关系,返回ture,而忽略了"="关系和">"区别,把它们归结为false。”
上面摘录的是主要内容。。所以我存一下网址就好了干嘛在这里胡说八道。
我的理解是:sort的排序不是一般理解中在返回true时不改变顺序而在false时改变顺序,而是刚好相反false改变true不变。相当于一个顺序从后向前,条件为自定义条件的相反条件的排序。也就是它所维护的不是一个符合所给条件的正序序列,而是一个从后向前条件刚好相反的序列,这两个序列看起来是等价的。