场景应用:数组获取数据对

size=4
alistIndex = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

每个数据希望有size = 4个数据对
如0 有 1 2 3 4 【0-1234】

那么1的数据对中必须0, 加任意3个 如7 8 9,但在后续中7 8 9的数据对中必须包含1
2的数据对中必须0,加任意3个
3的数据对中必须0 加任意3个
4的数据对中必须0 加任意3个

数据对必须相互包含。

0 - 1 2 3 4
1 - 0 2 6 7

那么2里必须包含0 1
2- 0 1 x y

事实上是list几百万的长度 size=2000 如果用笛卡尔积几百万的乘积估计不行。
还有一点是不希望包含的数据对太重复 比如直接把12345放一起
1-2345
2-1345
3-1245
4-1235
5-1234

比如这是朋友圈 这样看到同质化的内容就一样了。谢谢各位

说一下算法思路 有python code 更好。谢谢各位

同质化不可避免,请将同质化讲道最低,size 不是每一个都必须达到,到尽量达到

问题描述不清楚, 加任意3个是什么意思。
是随机取任意3个值就可以,还是什么