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

Сортировка списка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Непонятки с модификатором const http://www.cyberforum.ru/cpp-beginners/thread554941.html
Допустим я перегружаю оператор присваивания для создаваемого класса Array. В учебнике предлагается вот такая сигнатура данной перегрзки: SArray const & SArray::operator=(SArray const & right) Как ни удивительно, но все работает. Модификатор const (для возвращаемого значения) указывается по мнению автора для того, чтобы отлавливать вот такие ситации (a1=a2)=a3. Хорошо допустим. Но как тогда...
C++ Поиск и запись в файл Подскажите,пожалуйста,в чем ошибка.Неправильно идет поиск. #include <iostream> #include <conio.h> #include <locale> #include <fstream> using namespace std; class Hotel { char *country, *name; http://www.cyberforum.ru/cpp-beginners/thread554939.html
торрент ссылка с рабочей программой с++ C++
Помогите мне найти нормальную ссылочку тореент для скачивания программы с++ так как мне друг дал ету программу я ее установил пытаюсь запустить нормальную простенькую програмку а компилятор ругаеться! Короче программа с глюком! Дайте пожалуйтса рабочую! Срочно нужно для работы!
Напечатать различные числа, встречающиеся в обеих последовательностях C++
Помогите составить программу: Даны две последовательности из целых чисел: a1, ..., an; b1, ..., bn. Напечатать различные числа, встречающиеся в обеих последовательностях. Тема: Одномерные массивы Вот мой вариант, но здесь печатаются не различные числа. #include <iostream> using namespace std; int main() { setlocale (LC_ALL, "rus");
C++ Поиск под слова в тексте типу string http://www.cyberforum.ru/cpp-beginners/thread554903.html
Как сделать поиск под слова в переменной типу string из рус. текстом Например если есть такое : string text = "hello world"; string word; cin >> word; // ввожу world int a = text.find(word); cout << a << endl;
C++ Разложить камни на 2 кучки так, чтобы разница масс этих кучек была минимальной. Здравствуйте, помогите, пожалуйста, решить данную ниже задачу. У Вас есть N камней с массами W1, W2 , … WN. Требуется разложить камни на 2 кучки так, чтобы разница масс этих кучек была минимальной. Входные данные В первой строке входного файла INPUT.TXT записано число N – количество камней (1 ≤ N ≤ 18). Во второй строке через пробел перечислены массы камней W1, W2 , … WN (1 ≤ Wi ≤ 105).... подробнее

Показать сообщение отдельно
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
22.04.2012, 14:48     Сортировка списка
Цитата Сообщение от IFree Host Посмотреть сообщение
Если с сортировочными алгоритмами еще не знаком, можешь позаимствовать здесь:
он же решил уже сортировать вставками. для списков как раз подходящий вариант.

Добавлено через 14 минут
как-то так. Писал в блокноте, могут быть ошибки.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void List::sort(){
Listitem* unsortedlist=first->next;
ListItem* ins_item, counter, pre;
first->next=NULL;//начинаем создавать новый список, перемещая в него элементы из несортированной части по очереди
while(unsortedlist){
  ins_item=unsortedlist;//элемент для вставки - первый в неотсортированной части
  unsortedlist=unsortedlist->next;// удаляем его из неё
  counter=first; //counter \указатель на место, куда вставить в отсортированную часть
  pre=NULL;
  while(counter){//ищем это место пока отсорт. часть не закончится...
   if (ins_item->item>counter->item){
     pre=counter;                             //при этом перемещаем указатель по отсортированной части
     counter=counter->next;              // запоминая, текущее и предыдущее место
     }
     else{
      break;//...или не найдём место, куда вставить элемент.
     }
  }
  if(pre) pre->next=ins_item;// вставляем элемент между предыдущим
  ins_item->next=counter;//и текущим элементом в отсортированной части
}
 
}
 
Текущее время: 01:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru