首页 > 解决方案 > 就地对线性数据结构进行排序

问题描述

如何将此函数转换为对列表a进行适当排序的函数?我目前有以下内容:

template<typename Iterator>
void LISTsort(Iterator curr, Iterator stop)
{
    //how to sort in place
}

关于如何将值“放”回list a. 我知道我可以使用 while 循环并替换每个人*curr并递增迭代器。有没有办法在不使用任何循环的情况下实现这一点?

标签: c++listiterator

解决方案


std::list有一个用于排序的成员函数。它被称为sort

有没有办法在不使用任何循环的情况下实现这一点?

不使用循环(递归或迭代)进行排序的唯一方法是将输入的大小限制为常数。


推荐阅读