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

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

Восстановить пароль Регистрация
 
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
16.06.2012, 20:12     Сортировка списка, дописать код #1
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
#include<conio.h>
#include<iostream.h>
#include<iomanip.h>
 
struct List
{
  int b;
  List *pred,*next;
} *first,*q,*p,*prom;
 
int main()
{
 int i,n,m;
 cout<<"Vvedite n -> ";cin>>n;
 cout<<endl;
 cout<<"Vvedite elementi spiska\n";
 first=new List;
 cin>>first->b;
 first->next=first->pred=NULL;
 q=first;
 for (i=1;i<n;i++)
 {
  p=new List;
  cin>>p->b;
  
  q->next=p;
  p->pred=q;
  q=p;
 }
 cout<<"Vivod elementov spiska :";
 q=first;
 for (i=0;i<n;i++)
 {
  cout<<q->b<<setw(3);
  q=q->next;
 }
  getch();
  return 0;
}
Добавлено через 2 минуты
Это простой список ...
я не знаю как делается сортировка..
если не сложно напишите пожалуйста..

и еще как делается освобождение памяти в списке.. ( знаю что для каждого элемента списка поотдельности освобождается память , но как это сделать я не знаю).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2012, 20:12     Сортировка списка, дописать код
Посмотрите здесь:

C++ Дописать код в файл!
C++ Дописать код
C++ Дописать код программы
C++ Дописать код
Дописать код по алгоритму C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
16.06.2012, 20:38     Сортировка списка, дописать код #2
http://bit.ly/LSNr3m
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
16.06.2012, 20:49  [ТС]     Сортировка списка, дописать код #3
Jtalk, ага вот только там на паскале а я не знаю как переделать..
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
17.06.2012, 13:00     Сортировка списка, дописать код #4
Вникнуть и сделать самому.
Ну ладно:
Merge sort
Selection sort
Shell sort
Heapsort
Quicksort

Пожалуйста, неполный список алгоритмов, работающих со списками. Выбираете любой и вперед. Для большинства из них в педивикии есть статьи с картинками и примерами кода.
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
17.06.2012, 17:59  [ТС]     Сортировка списка, дописать код #5
Jtalk, мммм... я имел ввиду что нужно переделать по С++....
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
17.06.2012, 18:56     Сортировка списка, дописать код #6
Цитата Сообщение от Noclip Посмотреть сообщение
Кто знает как делается сортировка списка , пожалуйста выручите меня.!
Я знаю можно вот так
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
42
#include <iostream> 
#include <list> 
#include <ctime>
#include <cstdlib> 
using namespace std;
 
int main() 
{   
    setlocale(0, "rus");
    srand((unsigned) time(0));
    list <int> lst;  
    int i;
 
    for ( i = 0; i < 10; i++) 
        lst.push_back(rand() % 100);  // помещаем в список случайные числа
 
    cout << "Исходное содержимое списка \n"; 
    list<int> :: iterator p = lst.begin(); // итератор на начало
 
    while(p != lst.end()) // до конца списка
    { 
        cout << *p << " "; 
        p++; 
    } 
    cout << endl; 
 
    lst.sort();  // сортируем
 
    cout << "Отсортированный срисок \n"; 
    p = lst.begin(); // на начало
 
    while(p != lst.end())  // до конца
    { 
        cout << *p << " "; 
        p++; 
    }  
    cout << endl; 
 
    system("pause");
 
    return 0;
}
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
17.06.2012, 19:00  [ТС]     Сортировка списка, дописать код #7
David Sylva, если вам будет не сложно можете ли вы переделать его под мой листинг


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
#include<conio.h>
#include<iostream.h>
#include<iomanip.h>
 
struct List
{
  int b;
  List *pred,*next;
} *first,*q,*p,*prom;
 
int main()
{
 int i,n,m;
 cout<<"Vvedite n -> ";cin>>n;
 cout<<endl;
 cout<<"Vvedite elementi spiska\n";
 first=new List;
 cin>>first->b;
 first->next=first->pred=NULL;
 q=first;
 for (i=1;i<n;i++)
 {
  p=new List;
  cin>>p->b;
  
  q->next=p;
  p->pred=q;
  q=p;
 }
 cout<<"Vivod elementov spiska :";
 q=first;
 for (i=0;i<n;i++)
 {
  cout<<q->b<<setw(3);
  q=q->next;
 }
  getch();
  return 0;
}
вот как здесь... тут нет сортировки , но не могли бы вы сюда её приделать.... буду очень вам благодарен.
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
17.06.2012, 19:10     Сортировка списка, дописать код #8
Нет желания.
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
17.06.2012, 19:13  [ТС]     Сортировка списка, дописать код #9
David Sylva, может всё-таки выручите..... буду благодарен...
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
17.06.2012, 19:27     Сортировка списка, дописать код #10
Я тебе предложил свой код, он тебя не устроил, а разбираться в твоём у меня желания нет.
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
17.06.2012, 21:47  [ТС]     Сортировка списка, дописать код #11
David Sylva, я заметил что вместо списков вы мне написали вектора
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.06.2012, 21:52     Сортировка списка, дописать код
Еще ссылки по теме:

C++ Дописать код
C++ Написать код программы, выполняющей растяжку списка и вставку, удаление из списка и сжатие списка
"Сортировка двусвязного списка путем исключения элемента с минимальным значением и включения его в начало нового списка C++

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

Или воспользуйтесь поиском по форуму:
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
17.06.2012, 21:52     Сортировка списка, дописать код #12
Под ваш вариант предложенный код не перенесется — он использует собственный метод сортировки из std::list.
Yandex
Объявления
17.06.2012, 21:52     Сортировка списка, дописать код
Ответ Создать тему
Опции темы

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