Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать индексный список https://www.cyberforum.ru/ cpp-beginners/ thread1959907.html
Не могу сделать индексный список, примеров фактически никаких нет, теории особой как таковой тоже нет. Есть задание: "тип линейного списка":индексный "количество элементов":11 "типы элементов":...
C++ Найти кратчайший маршрут между городами (графы)
Пожалуйста, помогите!!! Имеется несколько городов, связанных в виде графа. Каждое ребро графа обозначает допустимость пути из одного города в другой и содержит число – расстояние между городами. ...
C++ Как удобнее обойти инкапсуляцию в программе из нескольких файлов на С/С++? Ситуация такая: в программах на Бейсике, например, существуют единые для всего кода переменные, с которыми можно полноценно работать в любом месте программы. Есть многочисленные подпрограммы - просто... https://www.cyberforum.ru/ cpp-beginners/ thread1959902.html C++ Найти сумму элементов расположенных справа от диагоналей матрицы https://www.cyberforum.ru/ cpp-beginners/ thread1959901.html
Дан двумерный массив размера N×N, заполненный целыми числами. Выделим в нем четыре четверти, ограниченные главной и побочной диагоналями (без учета элементов, расположенных на диагоналях): верхнюю,...
Вычисление значения интеграла на заданном интервале C++
Составить программу вычисления значения интеграла на заданном интервале от Xн до Xк, используя заданный метод численного интегрирования. Xн=-0,8 ; Xк=0,2; Метод трапеций; Интеграл \int_{x_H}^{x_K}...
C++ Вычисление значения табулированной функции https://www.cyberforum.ru/ cpp-beginners/ thread1959885.html
Вычисление значения табулированной функции, используя метод линейной интерполяции и две формулы нелинейной интерполяции. Результаты вычисления следует выводить в формате с плавающей точкой.
C++ вывести на экран только те числа на отрезке [a,b], у которых кол-во делителей равно заданному числу https://www.cyberforum.ru/ cpp-beginners/ thread1959883.html
это нужно сделать с помощью функции,которая для заданного числа N возвращает значение true-если число простое.false-если число составное. в программировании почти полный 0.Заранее спасибо.
C++ не могу придумать, Как сделать объединение, буду благодарен, если поможете
#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <time.h> int main() { setlocale(LC_ALL, "Russian"); srand(time(NULL));
C++ Нахождение корня нелинейного уравнения Нахождение корня нелинейного уравнения f1(x)=f2(x) заданным методом на заданном интервале аргумента x (т.е. при Xн<=X<=Xк). F1(x)=4x-1-e^0.25x ; Xн=-2,7 ; F2(x)=cos(x-1)-0,7x ; Xк=3 ; Метод: Метод... https://www.cyberforum.ru/ cpp-beginners/ thread1959876.html C++ Решить проблему с деструктором класса Student https://www.cyberforum.ru/ cpp-beginners/ thread1959843.html
Добрый день! Хотел написать простенький класс, но возникла проблема с деструктором. Подскажите, пожалуйста, в чём ошибка. Если деструктор ничего не делает, то всё работает. #include <iostream>...
C++ Порядок работы операторов
Подскажите пожалуйста, логику работы операторов в примере ниже, почему выводит именно таким образом: char *c = "12345"; cout << *(c) << "6" << endl; // Выводит 16 cout << *(c++) << *c << endl;...
C++ Напечатать все положительные числа из текста https://www.cyberforum.ru/ cpp-beginners/ thread1959841.html
Здравствуйте! Помогите пожалуйста с кодом: Напечатать все положительные числа из текста. Исходные данные программа должна брать из .txt и выводить результат на экран. Прошу не сложный, пусть он...
2 / 2 / 2
Регистрация: 20.10.2016
Сообщений: 130
0

Нисходящая сортировка слиянием. Двухпутевое слияние - C++ - Ответ 10328056

13.04.2017, 18:48. Показов 1626. Ответов 2
Метки (Все метки)

Доброго времени суток, у меня возникла проблема, мне нужно написать функцию нисходящей сортировки массива слиянием, а метод слияния двухпутевой. К сожалению у меня есть только восходящая сортировка, и как я ни пытался сделать нисходящую, ничего не выходит, подскажите пожалуйста, что мне стоит сделать.
Собственно сама функция:
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
void merge(int *a, int n)
{
  int mid = n / 2;
  if (n % 2 == 1)
    mid++;
  int h = 1;
  int *c = (int*)malloc(n * sizeof(int));
  int step;
  while (h < n) 
  {
    step = h;
    int i = 0;
    int j = mid;
    int k = 0;
    while (step <= mid) 
    {
      while ((i < step) && (j < n) && (j < (mid + step))) 
      {
        if (a[i] < a[j])  
        {
          c[k] = a[i];
          i++; k++;
        }
        else {
          c[k] = a[j];
          j++; k++;
        }
      }
      while (i < step) 
      {
        c[k] = a[i];
        i++; k++;
      }
      while ((j < (mid + step)) && (j<n)) 
      {
        c[k] = a[j];
        j++; k++;
      }
      step = step + h;
    }
    h = h * 2;
    for (i = 0; i<n; i++)
      a[i] = c[i];
  }
}


Вернуться к обсуждению:
Нисходящая сортировка слиянием. Двухпутевое слияние C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.04.2017, 18:48
Готовые ответы и решения:

Простое двухпутевое слияние.Сортировка. Реализация
Привет всем. Возникла такая проблема: пытаюсь реализовать сортировку простым двухпутевым слиянием...

Нисходящая сортировка слиянием. Метод абстрактного обменного слияния
Добрый день, изучал различные сортировки и наткнулся на реализацию нисходящей сортировки слиянием....

Внешние сортировки. Сортировка слиянием. Простое слияние
Пом-гите решить, заранее благодарен.)) Билет 8 1 .Внешние сортировки. Сортировка слиянием....

Внешние сортировки. Сортировка слиянием. Естественное слияние
Пом-гите решить, заранее благодарен.)) Билет 9 1 .Внешние сортировки. Сортировка слиянием....

2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.04.2017, 18:48
Помогаю со студенческими работами здесь

Естественное двухпутевое слияние
Реализация связи элементов линейного списка - указатели. Способ организации линейного связанного...

Нисходящая сортировка методом слияния
Добрый день ребята!!! Мне нужно сделать нисходящею сортировку методом слияния! Я набросал...

Двухпутевое слияние)))си++
#include &lt;conio.h&gt; #include &lt;iostream.h&gt; #include &lt;stdlib.h&gt; void clrscr(void); void main() {...

Сортировка слиянием. В каком куске кода происходит сортировка и каким именно образом?
Помогите, пожалуйста, разобраться. Подскажите в каком куске кода происходит сортировка и каким...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru