Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2016, 23:29   #1
Okokcmoo
Пользователь
 
Регистрация: 28.10.2016
Сообщений: 13
Вопрос c++ Пожалуйста, помогите решить с векторами

Есть решение с массивами http://www.codeabbey.com/index/task_view/bubble-sort
#include <iostream>
#include <algorithm>
using namespace std;


void print_arr(int *a, int arr_size){
cout<< " array= ";
for (int i=0; i<arr_size; i++){
cout <<*(a+i)<<" ";
}
cout <<endl;
}
int main () {
int n=8;
int a[] ={3, 1, 4, 1, 5, 9, 2, 6};
int loops=0;
print_arr(a,n);
int swaps =0;
for(int j=0; j<n; j++){

for (int i=0; i<n-1; i++){
if (a[i]>a[i+1]){
cout<<"swapping("<<a[i]<<","<<a[i+1]<<")";
cout<<endl;

swap(a[i], a[i+1]);

swaps++;
print_arr(a, n);
}
}
if (swaps>0){
loops++;
}



cout <<"total-swaps="<<swaps<<", loops="<<loops<<endl;
}

return 0;


}
Okokcmoo вне форума Ответить с цитированием
Старый 29.10.2016, 00:33   #2
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Вот что сделай.

В поиске этого сайта задай: "поиск пузырьком".
и просмотри все темы. Там куча тем - может что то тебе подойдёт.


21.jpg
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 00:38   #3
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Тебе же методом Пузырьком нужно отсортировать массив или нет?


22.jpg


И посмотри здесь:

https://ru.wikipedia.org/wiki/Сортировка_пузырьком
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 01:05   #4
Okokcmoo
Пользователь
 
Регистрация: 28.10.2016
Сообщений: 13
По умолчанию

Да, я решила это массивами. Мне нужно решение с векторами (динамическими массивами). std:vector
Okokcmoo вне форума Ответить с цитированием
Старый 29.10.2016, 01:07   #5
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

А здесь что -нибудь нашла?
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 01:11   #6
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

сюда взгляни:


http://www.programmersforum.ru/showthread.php?t=295369
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 01:18   #7
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Что нибудь нашла?
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 01:26   #8
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Какая у тебя ситуация на теперешний момент?
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 02:06   #9
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Проще перевести в динамическое распределение памяти.

Вот смотри (прочитай внимательно).

0.jpg


1.jpg


Видео ролик посмотри:

https://www.youtube.com/watch?v=f3r82vQpeo8


p.s.: ты что не могла разобраться с динамикой и 2-е строчки дописать?

Код:
#include <iostream>
#include <algorithm>
using namespace std;

void print_arr(int *a, int arr_size){
	cout << " array= ";
	for (int i = 0; i<arr_size; i++){
		cout << *(a + i) << " ";
	}
	cout << endl;
}
int main()
{
	int n = 8;
	int *a = new int[n];

	a[0] = 3;	a[1] = 1;	a[2] = 4;	a[3] = 1;	a[4] = 5;	a[5] = 9;	a[6] = 2;	a[7] = 6;

	int loops = 0;
	print_arr(a, n);
	int swaps = 0;
	for (int j = 0; j<n; j++){

		for (int i = 0; i<n - 1; i++){
			if (a[i]>a[i + 1]){
				cout << "swapping(" << a[i] << "," << a[i + 1] << ")";
				cout << endl;

				swap(a[i], a[i + 1]);

				swaps++;
				print_arr(a, n);
			}
		}
		if (swaps>0){
			loops++;
		}
		cout << "total-swaps=" << swaps << ", loops=" << loops << endl;
	}
	delete[] a;
	system("pause");
	return 0;
}


p.s.: пиши программы на остальные сортировки... А я переведу их в динамическую память (по 2-е строчки допишу)...

Последний раз редактировалось ura_111; 29.10.2016 в 02:35.
ura_111 вне форума Ответить с цитированием
Старый 29.10.2016, 02:25   #10
Okokcmoo
Пользователь
 
Регистрация: 28.10.2016
Сообщений: 13
По умолчанию

Ты кажется неправильно понял. Это не функция. https://ru.wikipedia.org/wiki/Vector_(C%2B%2B) посмотри
Okokcmoo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
c++ Пожалуйста, помогите решить с векторами Okokcmoo Помощь студентам 7 29.10.2016 06:01
c++ Пожалуйста, помогите решить с векторами Okokcmoo Помощь студентам 0 28.10.2016 23:15
Помогите пожалуйста решить! С помощью checkbox решить найти положительные числа и среднее арифметическое АлександраОрлова Помощь студентам 1 06.12.2015 08:52
работа с векторами и матрицами. помогите пожалуйста решить задачу. владимир/к. Паскаль, Turbo Pascal, PascalABC.NET 1 28.01.2009 10:45