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

Оптимизация алгоритма - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ приведение типов указателей http://www.cyberforum.ru/cpp-beginners/thread807107.html
Задача у меня простая. Нужно побитно оперировать с числом unsigned int и на каких-то этапах заносить его в массив. для начала я решил, что пусть хотя бы это число выводится в memo элементик на форме. написал код: static bool *Manth = new bool ; void *pntr=0; pntr= (unsigned int*)&Manth; Memo1->Lines->Add(Now().TimeString()+": "+*pntr);
C++ signal.h Доброго времени суток! Начал разбираться с сигналами и понял что как работать с ними под windows мало литературы... так вот, у меня есть код: // showarg.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <iostream> #include <signal.h> #include <locale> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread807099.html
Debug assertion failed C++
Во время отладки вылазит такая ошибка,не могу понять в чём дело
C++ Динамический массив с большим количеством элементов
Нужно создать динамический массив (каждый элемент целое положительное число до 10^9), который по введенным данным создавал N элементов массива, где N может быть до 10^5. unsigned long int *arr = new unsigned long int; Я сделал так, но если количество элементов больше 45920, то выводит ошибку "terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc...
C++ вызов конструктора http://www.cyberforum.ru/cpp-beginners/thread807079.html
Здарова! Есть допустим класс: class Str { Str(); Str(Str&); Str(char*); };
C++ Где ошибка? Чтение массива из файла Пишу программу которая читает вектор и массив из файла. После чего перемножает вектор на массив (получается в итоге вектор). причем отправка на кластеры происходит по столбцам. Но прога да же читать файл не хочет. Файл физичиски присутствует и заполнено но на экран нечего не выводится, а прога падает. stdafx.h #pragma once #include "targetver.h" #include <stdio.h> #include <tchar.h>... подробнее

Показать сообщение отдельно
Serhiy:)
 Аватар для Serhiy:)
2 / 2 / 1
Регистрация: 09.10.2010
Сообщений: 72
13.03.2013, 01:54     Оптимизация алгоритма
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include<iostream>
#include<stdlib.h>
#include<time.h>
#include<iomanip>
using namespace std;
 
#define jaba for(i=0; i<k; i++) cout<<sum(a,i)<<"\n"
 
 
const int k = 4;
int sum(int (&ar)[k][k], int ns);
void init(int (&ar)[k][k]);
void out(int (&ar)[k][k]);
 
void main()
{ 
  int a[k][k],s=0,i,j,c,temp;
 
 
  init(a);
  out(a);
  
  jaba;
 
  for(c=0; c<k; c++)
       
         for(j=1; j<k; j++)
             if(sum(a,j-1)> sum(a,j))
         for(i=0; i<k; i++)
      { 
        
        temp = a[i][j];
        a[i][j] = a[i][j-1];
        a[i][j-1] = temp;
      }
      
      
 
   cout<<"\n\n";
   out(a);
   jaba;
    
  
   cin.get();
 
}
 
 
void out(int (&ar)[k][k])
{
 int i,j;
 
   for(i=0; i<k; ++i) {
      for(j=0; j<k; ++j) cout<<setw(5)<<ar[i][j];        
        
 
      cout<<'\n';
    }
}
 
void init(int (&ar)[k][k])
{    int i,j;
srand(time(0));
   for(i=0; i<k; ++i) {
      for(j=0; j<k; ++j) ar[i][j]=rand()%100;
                 
    }
}
 
int sum(int (&ar)[k][k], int ns)
{
   int s=0; 
 
   for(int i=0; i<k; i++) s+=ar[i][ns];
   return s;
}
Добавлено через 4 минуты
Меня интересует эта часть код:
C++
1
2
3
4
5
6
7
8
9
10
11
 for(c=0; c<k; c++)
       
         for(j=1; j<k; j++)
             if(sum(a,j-1)> sum(a,j))
         for(i=0; i<k; i++)
      { 
        
        temp = a[i][j];
        a[i][j] = a[i][j-1];
        a[i][j-1] = temp;
      }
Возможно эту сортировку оптимизировать как-то не изменяя метод сортировки??
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru