Форум программистов, компьютерный форум CyberForum.ru

Поглядите сортировку , по моему только 1 элемент сортирует - C++

Восстановить пароль Регистрация
 
evelolka
 Аватар для evelolka
2 / 2 / 0
Регистрация: 25.10.2013
Сообщений: 108
26.05.2014, 18:21     Поглядите сортировку , по моему только 1 элемент сортирует #1
структура
C++
1
2
3
4
5
6
7
8
9
struct WORKER
    {
      std::string name, family, dolzhnost ;
      int year;
 
      WORKER *next ;
    };
    WORKER *head = 0 ;
    WORKER *curr = 0 ;
сортировка
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
curr = head  ;
    bool sortgo = true ;
    WORKER *timeless ;
    while( sortgo  )
    {
        sortgo = false ;
        while( curr -> next != 0 )
        {
            if( curr == head )
            {
                if(curr -> year > curr -> next -> year )
                {
                    head = head -> next ;
                    curr -> next = head -> next ;
                    head -> next = curr ;
                    timeless = head ;
                }
                else
                {
                    timeless = curr ;
                    curr = curr -> next ;
                }
            }
            else
            {
                if( curr -> year > curr -> next -> year )
                {
                    timeless -> next = curr -> next ;
                    curr -> next = curr -> next -> next ;
                    timeless -> next -> next = curr ;
                    timeless = timeless -> next ;
                }
                else
                {
                    timeless = curr ;
                    curr = curr -> next ;
                }
            }
            sortgo = true ;
        }
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2014, 18:21     Поглядите сортировку , по моему только 1 элемент сортирует
Посмотрите здесь:

C++ Передается только нулевой элемент массива
C++ Будте добры поглядите что не так..
неправильно сортирует массив по возрастанию и ненаходит минемальный элемент C++
Почему не сортирует C++
Разработать функцию, которая сортирует только положительные элементы массива на своих местах C++
Сортировку вставками меняем на сортировку слиянием C++
Сортировку вставками меняем на Пирамидальную сортировку и на Сортировку подсчётом C++
Выводится только последний элемент массива C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 12:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru