Ejemplo n.º 1
0
        public static Func <TValue> Weighted <TValue>(this IEnumerable <KeyValuePair <TValue, double> > values)
        {
            var builder = new WeightedSetBuilder <TValue>();

            foreach (var kv in values)
            {
                builder.Add(kv.Key, kv.Value);
            }
            return(builder.Build());
        }
Ejemplo n.º 2
0
        public static Func <TItem> Weighted <TItem>(this IEnumerable <TItem> items, Func <TItem, int, double> weight)
        {
            var builder = new WeightedSetBuilder <TItem>();
            var i       = 0;

            foreach (var item in items)
            {
                builder.Add(item, weight(item, i++));
            }
            return(builder.Build());
        }