我想弄清楚在多个条件下对数组进行排序的最佳方法。我想对一个数组进行排序,然后根据第一个条件排序该数组的一个子集。排序分类矢量的子集
例子:
说我们有数据:{ ("cat", 2), ("dog", 4), ("cat", 1), ("dog", 3) }
我们解决这首先根据串的字母顺序:
{ ("cat", 2), ("cat", 1), ("dog", 4), ("dog", 3) }
然后我们两个子集进行排序(集猫和狗的组合):
{ ("cat", 1), ("cat", 2), ("dog", 3), ("dog", 4) }
另外,我使用具有下面的头一个递归快速排序方法:
void quickSort(vector<Type*>, int left, int right)
其中左和右是边界指数,通过该载体应进行排序。
我应该向排序方法本身添加代码还是应该再次调用排序方法?
你应该自己思考一下。别人的帮助不会帮助你自己解决其他问题。我建议你不要使用StackOverflow来解决你的功课。 – Beginner
这不是一个家庭作业,自学,FYI。我一直在想。我已经知道了,我正在寻找我说的“最好”的方式。我正在寻找现在优化。 – HJM