1. C# / Говнокод #10018

    +110

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    int[] k = new int[docArr.Length];
    int index = 0;
    
    foreach (var item in docArr)
    {
          k[index] = (int)item;
          index++;
    }
    
    var l = k.ToArray().OrderByDescending(i => i);

    True сортировка массива.

    Запостил: partizan, 23 Апреля 2012

    Комментарии (14) RSS

    • Линку есть, значит код в порядке.
      Ответить
      • AsParallel() не хватаит :(
        Ответить
        • Пора уже запилить в говнокодике вместо "Где здесь С++?" "Где здесь LINQ?"
          Ответить
        • Блииин! Я сам хотел это ответить!
          Да и вообще код говно потому что linq не в том объеме, в каком можно:
          foreach императивный, k - по индексу, код не в одну строчку.
          Ответить
          • var index = 0;
            var l = docArr.AsParallel().Select(i => { index++; return (int) i; }).ToArray().OrderByDescending(i => i);

            Все правильно делаю?
            Ответить
            • Почти, нужен ещё один AsParallel после OrderByDescending
              Ответить
              • Тогда уж перед, чтобы snapshot, возвращенный ToArray(), тоже "параллельно" обрабатывался при сортировке.
                Ответить
                • В этом же вся соль, чтобы вконце стоял...
                  Хотя лучше после каждого выражения ставить AsParallel() maximume spid
                  Ответить
                  • >Хотя лучше после каждого выражения ставить AsParallel()
                    LINQ головного моска
                    Ответить
            • У тебя в коде есть "глобальная переменная", надо от неё избавиться.
              Ответить
              • всё вокруг идет к глобализации ... и программирование - не исключение :)
                Ответить
    • А как docArr объявлен, что такие чудесные приведения типов нужны?
      Ответить
    • > int[] k
      > k.ToArray()
      Ответить

    Добавить комментарий