使用Stream<T>
和Comparator<? super T>
,
Stream<T> s;
Comparator<? super T> c;
是
s.sorted(c).findFirst();
等于等同于
s.min(c);
答案 0 :(得分:9)
逻辑上,两个代码段都返回相同的结果。但是,typedef string Type;
class Exercise {
public:
typedef double Type;
Type setVal(Type);
Type initVal() { return 1.0; }
private:
int val;
};
Exercise::Type Exercise::setVal(Type parm) {
val = parm + initVal();
return val;
}
需要更多时间和更多内存,因为基于比较器的排序是O(n * log n)并且需要O(n)空间以避免在适当的位置进行排序,而搜索sorted
则是O(n),需要O(1)空间。