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

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

Войти
Регистрация
Восстановить пароль
 
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 693
#1

Метод простой вставки с модификацией - C++

29.11.2011, 23:24. Просмотров 715. Ответов 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
#include <iostream>
 
using namespace std;
 
int main()
{int x=0,a[]={2,3,1,9,4,6,5,8,7,0},n=10;
 
for(int i=1;i<n;i++)
{
 x=a[i];
 for(int j=i-1;j>=0;j--)
 {
   if(x>a[j])
  {
  a[j+1]=x;
  break;
  }
else
  {
        a[j+1]=a[j];
  }
 
  a[j]=x;
  }
 }
for(int q=0;q<n;q++)
{cout<<a[q]<<endl;}
    cin.get();
    cin.get();
    return 0;
}
Как усовершенствовать его до метода бинарной вставки. То есть чтоб количество сравниваний уменьшилось. Вот я набросал немного. Но эта конструкция не работает

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
#include <iostream>
 
using namespace std;
 
int main()
{int x=0,a[]={2,3,1,9,4,6,5,8,7,0},n=10,m=0;
 
for(int i=1;i<n;i++)
{ m=(i-1)/2;
 x=a[i];
  if(x<a[m])
  {
        a[i]=a[m];
        a[m]=x;
        i=0;
         
  }
}
for(int q=0;q<n;q++)
{cout<<a[q]<<endl;}
    cin.get();
    cin.get();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2011, 23:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Метод простой вставки с модификацией (C++):

Реализовать алгоритм простой вставки через двусвязный список - C++
Здравствуйте ! Нужно реализовать алгоритм простой вставки через двусвязный список Не понимаю как

Метод вставки - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int main() { const int n = 10; int a; int key = 0, j = 0; ...

Метод вставки - C++
Расположение массива в порядке убывания методом вставки!!! Как это? Я просто саму задачу не понимаю, решить, думаю, смогу??? По убыванию...

Распараллеливание алгоритма сортировки - метод вставки - C++
Здравствуйте нужно осуществить распараллеливание алгоритма сортировки - метод вставки на N отдельных потоков. Есть идеи как это...

Метод простой итерации - C++
Помогите решить методом простой итерации уравнение вида x=f(x).Очередное приближение корня находится по формуле {x}_{n}=f({x}_{n-1});...

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

1
accept
4828 / 3249 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
30.11.2011, 15:08 #2
внутренний цикл должен быть
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2011, 15:08
Привет! Вот еще темы с ответами:

Метод простой итерации - C++
решение системы линейных уравнений методом простой итерации

Метод простой итерации - C++
Всем привет. Кто знаком с методом простой итерации??? Вот есть код, он вроде работает, но в итоге ничего не дает, в коде описаны...

Метод простой итерации - C++
Вот такая задача! Используя метод простой итерации, решить с точностью ε = 10 такие нелинейные системы уравнений. Помогите реализовать в...

Метод простой итерации - C++
Добрый день! нужна помощь, помогите пожалуйста с решением задачи Решить методом простой итерации уравнение вида х=Ф(Х). Очевидное...


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

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

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