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

Упорядочить элементы списка по возрастанию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с CToolBar http://www.cyberforum.ru/cpp-beginners/thread619070.html
У меня был тулбар в проекте класса CToolBar. я решил добавить еще один, тулбар себе, он добавился, однако прилепился (выравнился) к правой части окна моего приложения... Как сделать так чтобы он...
C++ Оператор return Помогите пожалуйста разобраться как работает оператор return. Что происходит после return n и после return fibonacci (n-1) + fibonacci (n-2); #include <iostream> unsigned long fibonacci... http://www.cyberforum.ru/cpp-beginners/thread619068.html
C++ Реализация B+ дерева
Не совсем уверен, что сюда, но где спросить не знаю. Может кто-нибудь подсказать, где взять готовую реализацию В+ дерева, но не LGPL.
C++ Перевод выражения в обратную польскую запись
Товарищи! Нужна помощь. С помощью класса стек на основе динамического массива надо перевести инфиксное выражение в постфиксное с помощью алгоритма сортировочной станции. Входные данные должны быть...
C++ Перегрузка operator= http://www.cyberforum.ru/cpp-beginners/thread619053.html
Возможно ли перегрузить оператор= так, что бы можно было написать? val = {10, 20, 15};
C++ Деструктор (опасность удаления) Насколько опасно в деструкторе напрямую прописывать delete this? class MyClass { int a, b; AnotherClass* c; public : static int mas; ... ~MyClass() { //delete c; подробнее

Показать сообщение отдельно
softmob
1248 / 698 / 155
Регистрация: 20.02.2010
Сообщений: 1,035
05.07.2012, 20:16
надо легче, ну ок
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
using namespace std;
 
struct node
{       
    node(const int& v): item(v), next(nullptr) {}
    int item;
    node *next;
};
 
struct list
{
    list(): head(nullptr), tail(nullptr), size(0) {}
    ~list()
    {
        while (head != nullptr)
        {
            tail = head->next;
            delete head;
            head = tail;
        }
    }
    void push_back(const int& val)
    {
        node *tmp = new node(val);
        if (head != nullptr)
        { 
            tail->next = tmp;
            tail = tail->next;
        }
        else
            head = tail = tmp;
        ++size;
    }   
    node *head;
    node *tail; 
    size_t size;
};
 
int main(void)
{
    list lst;
    int arr[] = {123, -7, 34, 1, 23, -9, 0, 0, 34, 78, -67};    
    for (size_t i = 0; i != sizeof arr / sizeof *arr; ++i)
        lst.push_back(arr[i]);   
    for (size_t i = 0; i != lst.size - 1; ++i) 
    {       
        node *tmp2 = lst.head, *tmp1;
        for(size_t j = 0; j != lst.size - 1 - i; ++j) 
        {     
            tmp1 = tmp2;
            tmp2 = tmp2->next;
            if (tmp2->item < tmp1->item) 
                swap(tmp1->item, tmp2->item);
        }
    }
    for (node *i = lst.head; i != lst.tail->next; i = i->next)
        cout << i->item << ' ';
    return 0;
}
http://liveworkspace.org/code/c58dadb7a0305e3d9cac7ee3135da13e
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru