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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Алиш
62 / 2 / 3
Регистрация: 10.04.2011
Сообщений: 126
#1

Алгоритмы сортировки массивов - C++

21.03.2012, 12:23. Просмотров 850. Ответов 3
Метки нет (Все метки)

Дан массив А(50). Отсортировать элементы, предшествующие первому нулевому элементу, по возрастанию алгоритмом «Сортировка вставками».
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2012, 12:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритмы сортировки массивов (C++):

алгоритмы сортировки массивов - C++
помогите пожалуйста решить задачу на с++... Если у массива А(50) есть элемент, равный квадрату последнего элемента, то все элементы,...

Алгоритмы сортировки массивов - C++
Всем привет, хочу для общего развития узнать все способы сортировки массивов.(массив произвольный) (метод пузырька я знаю) какой из...

Алгоритмы сортировки и обработки двумерных массивов - C++
Пожалуйста помогите! я не понимаю C++ вообще. Очень нужна помощь! Задана матрица размером N×M, N,M<50. Определить k – количество...

Алгоритмы поиска и сортировки одномерных массивов - C++
Элементы, которые присутствуют в нескольких экземплярах или в массиве А, или в массиве В (или в обоих массивах) Алгоритмы поиска: •...

Реализовать все алгоритмы сортировки, оформив решение в виде функций ввода, вывода и обработки массивов - C++
Здравствуйте народ,помогите в решении данной задачки с помощью подпрограммы: Дан массив из N элементов. Отсортировать по возрастанию...

Напишите функцию сортировки, похожую на функцию которая использовалась для сортировки массивов, с той разницей, что ее а - C++
Напишите функцию сортировки, похожую на функцию которая использовалась для сортировки массивов, с той разницей, что ее аргументом должен...

3
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
21.03.2012, 12:28 #2
В чем помощь то нужна? конкретней?

Добавлено через 2 минуты
Алгоритмы сортировок
0
Алиш
62 / 2 / 3
Регистрация: 10.04.2011
Сообщений: 126
21.03.2012, 20:38  [ТС] #3
нужно листинг программы сделать, можете помочь?
0
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
21.03.2012, 22:01 #4
Цитата Сообщение от Алиш Посмотреть сообщение
нужно листинг программы сделать, можете помочь?
Я Вам скинул сылку выше на алгоритмы сортировок! там есть сортировка вставками! ну раз вы не увидели, тогда

на С++

C++
1
2
3
4
5
6
7
8
9
10
11
12
template< class T >
void insertSort(T* a, int size) 
{
    T tmp;
    for (int i = 1, j; i < size; ++i) // цикл проходов, i - номер прохода
    {
        tmp = a[i];     
            for (j = i - 1; j >= 0 && a[j] > tmp; --j) // поиск места элемента в готовой последовательности 
            a[j + 1] = a[j];    // сдвигаем элемент направо, пока не дошли
        a[j + 1] = tmp; // место найдено, вставить элемент    
    }
}
на Си

C
1
2
3
4
5
6
7
8
9
10
11
void insertSort(int* a, int size) 
{
    int i, j, tmp;
    for (i = 1; i < size; ++i) // цикл проходов, i - номер прохода
    {
        tmp = a[i];     
            for (j = i - 1; j >= 0 && a[j] > tmp; --j) // поиск места элемента в готовой последовательности 
            a[j + 1] = a[j];    // сдвигаем элемент направо, пока не дошли
        a[j + 1] = tmp; // место найдено, вставить элемент    
    }
}
Добавлено через 5 минут
Ладно не заморачивайся! держи такой рабочий код, но если не лень можешь его оптимизировать!

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
#include "iostream"
#include "ctime"
 
using namespace std;
 
int main()
{
    setlocale(0,"");
    srand(time(0));
    const int n = 50;
    int index;
    int A[n] = {0};
 
    for(int i = 0; i < n; i++)
    {
        cout << (A[i] = -5 + rand() % 10) << " ";
    }
 
    for(int i = n; i > 0; i--)
    {
        if(A[i] == 0)
        {
            index = i;
        }
    }
    
    int j;
    for (int i = 1; i < index; ++i) // цикл проходов, i - номер прохода
    {
            int  tmp = A[i];     
            for (j = i - 1; j >= 0 && A[j] > tmp; --j)// поиск места элемента в готовой последовательности 
            A[j + 1] = A[j];    // сдвигаем элемент направо, пока не дошли
        A[j + 1] = tmp; // место найдено, вставить элемент      
    }
 
    cout << endl << endl;
 
    for(int i = 0; i < n; i++)
    {
        cout << A[i] << " ";
    }
 
    system("pause >> null");
    return 0;
}
1
21.03.2012, 22:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.03.2012, 22:01
Привет! Вот еще темы с ответами:

Алгоритмы Сортировки - C++
помогите пожалуйста выполнить вот такое задание... завтра утром нужно сдать.... 1) Реализовать алгоритмы Insertion-Sort(сортировка...

алгоритмы сортировки - C++
нужно выполнить сортировку массива целых чисел 3 методами: простыми включениями, простым выбором, простым обменом подскажите пожалуйста...

STL алгоритмы сортировки - C++
Здрасти. В STL есть алгоритмы sort - упорядочивает последовательность и stable_sort - упорядочивает последовательность, не меняя...

типовые алгоритмы сортировки - C++
типовые алгоритмы сортировки как они выглядят ?


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru