Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.03.2017, 17:36   #1
EDWIN503
Пользователь
 
Регистрация: 13.11.2016
Сообщений: 15
По умолчанию Посчитать количество сравнений и перестановок в сортировке бинарными вставками

Добрый день, возникла проблема, мне нужно посчитать количество сравнений и перестановок в сортировке бинарными вставками, но я не знаю куда вставить счетчики, вот собственно сама функция:
Код:
void sort_array(int* x, unsigned int n)
{
    int g;
    int left;
    int right;
    int sred;
    for (int i = 1;  i < n; i++) 
        if (x[i-1] > x[i])
		{
            g = x[i];
            left = 0;  
            right = i-1;  
            do 
			{
                sred = (left + right)/2;    
                if  (x[sred] < g ) left = sred + 1;  
                else  right = sred - 1;      
            } while (left <= right);
            for (int j = i-1; j>=left; j--)
                x[j+1] = x[j];  
            x[left] = g;
        }
}
Заранее премного благодарен.
EDWIN503 вне форума Ответить с цитированием
Старый 04.03.2017, 12:31   #2
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Для начала расскажи (своими словами, а лучше нарисуй в Paint) о самом методе - как он работает? Используй каком-нибудь пример (можешь по-проще).

p.s.: если не знаешь - поищи на youtube, ну вот например:

https://www.youtube.com/watch?v=lxesF43JP8U
https://www.youtube.com/watch?v=ZaaHoq3G8BI
https://www.youtube.com/watch?v=u8gnpScbfFo
................................... ...............
................................... ...............
................................... ...............
изучи и расскажи о методе....
А потом будем смотреть где там сравнение или замена...
.

Последний раз редактировалось ura_111; 04.03.2017 в 12:35.
ura_111 вне форума Ответить с цитированием
Старый 04.03.2017, 12:46   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
изучи и расскажи о методе....
А потом будем смотреть где там сравнение или замена...
Изучить это не плохо. А в конкретном коде не видно, что ли, где сравнение и где перестановка
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 04.03.2017, 12:49   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Для этого надо хотя бы знать как выглядит условный опереатор...
p51x вне форума Ответить с цитированием
Старый 04.03.2017, 13:16   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Тоды да. Чет подумал, что код от ТС, а не копипаста
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++, проблема, число перестановок > числа сравнений Evielle Помощь студентам 1 12.06.2012 15:26
Сортировка бинарными вставками (C) Mirach Помощь студентам 1 30.01.2011 01:26
Посчитать количество сравнений в сортировке Хоара(паскаль) semak Помощь студентам 0 24.11.2010 10:17
Кол-во перестановок и сравнений при сортировках Peek-a-boo Помощь студентам 0 04.11.2010 12:04
Процедура сортировки с подсчётом перестановок и сравнений (Паскаль) Паскалька^^ Помощь студентам 0 17.10.2010 23:35