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

    +119

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    int buf;
                    for (int j = 1; j < srows.Length; j++)
                        for (int i = 0; i < srows.Length - j; i++)
                        {
                            if (vrows[i] > vrows[i + 1])
                            {
                                buf = vrows[i];
                                vrows[i] = vrows[i + 1];
                                vrows[i + 1] = buf;
    
                                buf = srows[i];
                                srows[i] = srows[i + 1];
                                srows[i + 1] = buf;
                            }
                        }

    В коде формы. (c) EGAR

    Запостил: jonie, 28 Февраля 2011

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

    • Универсально.
      Ответить
    • Буль-буль-буль.
      Ответить
    • Если объектов до 20, то это быстрее всего.
      Или если потом делается Флойд — Уоршелл, то оптимизировать сортировку смысла нет.
      Ответить
      • да хрен с ним. Сама реализация УГ. Нахрена тут двойной цикл-то? Это самая медленная реализация пузырька какая только существует.
        Ответить
        • а иначе (если цикл один) мы только один экстремальный элемент получим
          Ответить
        • Это пузырёк, сынок.
          Ответить
          • Это хреновый пузырек, отец.
            Ответить
            • не учи отца и баста!

              а пузырек не хреновый, он просто говняный. И в воде не тонет.
              Ответить
    • >EGAR
      East Galway Animal Rescue?
      Ответить
    • это учебный код? не обладаю точной инфой, но не верю, что в стандартной либе нет эффективных алгоритмов сортировки сравнимых объектов. Следовательно, зачем изобретать велосипед, только если не в целях учебы или самообразования
      Ответить
      • Да, вероятно учебный код. Метод Array.Sort имеет 17 перегрузок - на все случаи жизни. Или же автор кода не подозревает о них.
        Ответить
      • Сложность здесь в том, что нужно отсортировать параллельно два массива. Как для этого использовать готовые процедуры сортировки, автор не смог придумать.
        Ответить
        • Наверное, надо вместо 2 массивов использовать массив пар.
          Впрочем, когда один массив - это строки комбобокса, а другой - это список данных (и они типа согласованы по индексам), то так не выйдет. Я круто обломался, случайно поставив CBS_SORT при инициализации комбобокса.
          Ответить

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