Форум программистов, компьютерный форум, киберфорум
Наши страницы

сортировка перестановками - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция поиска количества максимальных элементов. http://www.cyberforum.ru/cpp-beginners/thread528553.html
Всем добрый вечер. В С++ начинающий, поэтому прошу вашей помощи. Вот собственно в чем заключается моя просьба: 3. Напишите функцию поиска количества максимальных элементов в массиве. Буду...
C++ класс CString расскажите пожалуйста, где найти информацию по этому классу?как его подключать, какие функции в нем есть? какую литературу прочесть чтобы в нем ориентироваться? а то я ничего толкового не встречал, а... http://www.cyberforum.ru/cpp-beginners/thread528549.html
inplace_merge C++
Здравствуйте. Нужна оч эффективный аналог это фунции...попытался придумать алгоритм, по которому она работает...получается слишком много проверок, копирований и т.д.... решил, что обычное...
Получить доступ к памяти C++
struct df{ unsigned f1: 1; unsigned f2: 1; unsigned f3: 6; }; df gh; df* pointer=(df*)0x50000000; int _tmain(int argc, _TCHAR* argv)
C++ сортировка и связь массивов http://www.cyberforum.ru/cpp-beginners/thread528531.html
доброго времени суток. проблема следующая: есть массив, скажем array1 = {1.3,0.5,5.7,0.9}; нужно создать еще один массив в котором по умолчанию стоят ранги первого массива array2= {1,2,3,4};. ...
C++ Поменять местами элементы матрицы, расположенные в верхней и нижней четвертях В квадратной матрице поменять местами элементы, расположенные в верхней и нижней четвертях, ограниченных главной и побочной диагоналями (за исключением элементов этих диагоналей). Помогите... подробнее

Показать сообщение отдельно
Kuzia domovenok
2119 / 1949 / 192
Регистрация: 25.03.2012
Сообщений: 6,755
Записей в блоге: 1
08.04.2012, 11:46
наверное там, где не добавил функцию main. (или она в другом файле)?

C++
1
2
3
4
5
6
7
8
9
void change(tElem* &a)
{ifstream f;
create(a,f);
    tElem *temp;
    a=new tElem;
        temp=a;
        a=temp->r;
        temp->r=a;
}
ЛОЛ. То есть ты для перестановки двух элементов
-создаёшь заново список, причём
-создаёшь его из какого-то неинициализированного файлопотока,
-берёшь в качестве аргумента нечто tElem* &a, боюсь предположить, что это, указатель на ссылку?
-затем полностью затираешь свою ссылку "а", теряя всё
-затем в а записываешь неинициализированное поле r из только созданного объекта temp
-И затем снова присваиваешь его a , в точно таком виде, в каком ты его прочитал.

Может тебе рановато списки проходить?

Добавлено через 17 минут
и ещё: вот это
C++
1
2
3
4
5
while (list)
    {
        if (list->r->value > list->r->r-value)
        change(list);
    }
-это не сортировка пузырьком, это один проход пузырька, а надо сортировать, пока не отсортируется
Лучше так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
tElem *list_ptr;
bool run;
while (run){
   run=true;
   list_ptr=start;
   while (list_ptr->r)
    {
        if (list_ptr->value > list_ptr->r-value){
                change(list_ptr);
                run=false;
               }
    }
}
Так что перестань пихать везде create(list)!!!!!
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.