Форум С++

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

Автор: EXP   (21.12.2008 в 20:47)
я потом подумал, может такое имелось ввиду :)

#include <iostream.h>
#include <conio.h>
using namespace std;

void insert (int n, int x[])
{
 int i, j, t, dv = 0, p = 0, vs=0;
 // vs - сравнений
 // p - прохождений наверное (цикл выполнился хоть один раз)
 // dv - сдвигов
 for (i=0; i<n; i++) {
   t = x[i];
   for (j=i-1; j>=0 && vs++ /*vs*/ && x[j]>t; j--) {
     x[j+1]=x[j];
     dv++; /* dv */
   }
   x[j+1]=t;
   if (i!=j+1) p++; /* p */
 }
 cout << vs <<" vs" << endl;
 cout << dv <<" dv" << endl;
 cout << p <<" p" << endl;
}

int main() {
 int x[]= {4, 8,2,84,12,1};
 int n=6;

insert(n, x);

 for(int t = 0; t < n; t++) {
   cout << x[t] << " ";
 }
 getch();
 return 0;
}


Ваше имя:

Пароль:

Цитировать

Используйте тэги для выделения текста:
Код: [code][/code]
Жирный: [b][/b]
Наклонный: [i][/i]
URL: [url][/url]

Сообщение:

Прикрепить: