首页 > 编程语言 > 详细

求数组最小公约数

时间:2016-04-05 00:24:24      阅读:299      评论:0      收藏:0      [点我收藏+]
  1. public class Divisor
    {
        private static Divisor instance;
    
        public static Divisor Instance
        {
            get {if(instance == null)
                    instance = new Divisor();
            return instance;
            }
        }
    
        float y, minDivisor;
        public float MinDivisor(float x1,float x2,float lerp)
        {
            if (x1 < 0 || x2 < 0 || lerp < 0)
                return 0;
            float y = x1 % x2;
            if (y > lerp)
            {
                x1 = x2;
                x2 = y;
                MinDivisor(x1, x2,lerp);
            }
            else
                minDivisor = x2;
            return minDivisor;
        }
    
        public float MinDivisor(float[] X_Arroy, float lerp)
        {
            List<float> div_Arroy = new List<float>();
            for (int i = 0; i < X_Arroy.Length-1; i++)
            {
                div_Arroy.Add(MinDivisor(X_Arroy[i], X_Arroy[i + 1], lerp));
            }
            if (div_Arroy.Count > 1)
                return MinDivisor(div_Arroy.ToArray(), lerp);
            else
                return div_Arroy[0];
        }
    }

     

求数组最小公约数

原文:http://www.cnblogs.com/redUnity/p/5353291.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!