stable_partition是c ++ STL的算法头文件中存在的函数模板.我读到它是一种自适应算法,其时间复杂度为O(n*logn)或O(n),具体取决于某些因素.有人可以解释一下这些因素是什么以及时间复杂度如何取决于这些因素.谢谢 !
stable_partition(vect.begin(), vect.end(), [](int x) { return x % 2 == 0; });
partition(vect.begin(), vect.end(), [](int x) {
return x % 2 == 0;
});
Run Code Online (Sandbox Code Playgroud)
上面的代码是为了解释两者之间的区别。