我有一个列表(我可以将其实现为任何类型的集合都可以提供简洁的解决方案),如下所示:
4,1,5,2,1,3,8,1,6,4,2,3
该列表实际上是由 3 个值组成的组,它的长度始终是 3 的倍数。组的前 2 个值与组的第 3 个值之间没有关系。
我想对数组进行排序,以使每个第三个值都保留在原位。对于我给出的示例,结果将是:
1,1,5,1,2,3,2,4,6,4,8,3
索引为 0、1、3、4、6 和 7 的元素已排序。索引为 2,5 和 8 的元素尚未排序。
另一种表达方式是想象列表是 x,x,y,x,x,y,x,x,y,x,x,y 并且我只想对 xs 进行排序。
我可以写一个算法,但想知道是否有简洁的方法来做到这一点?