C# 求解数学里的组合

来源:互联网 发布:淘宝复核认证在哪里 编辑:程序博客网 时间:2024/04/30 03:23

  比如数学里常见的问题,有n个不同的球,从中任意取2个,有多少种取法,这是组合

  用C#求解应该是这样的,假设这n个球放在一个叫ballList的列表里,最终求解的组合数放在变量 combinations

            int combinations = 0;            for (int i = 0; i < ballList.count-1; i++)            {                for (int j = i + 1; j < ballList.count; j++)                {                    combinations++;                }            }

额,为什么不直接用数学的公式算组合?比如现在不仅仅是求组合数,而是要把所有的球两两检查一遍碰撞,且不能重复,同样是组合问题,应该是这样写

假设有一个计算是否碰撞的函数intersects()

            for (int i = 0; i < ballList.count-1; i++)            {                for (int j = i + 1; j < ballList.count; j++)                {                    intersects(ballList[i], ballList[j]);                }            }


0 0