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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.09.2010, 11:18   #1
1ok
 
Регистрация: 01.02.2009
Сообщений: 8
По умолчанию C++ алгоритмы сортировки

1. Разработать проект для исследования алгоритмов сортировки в среде Visual stydio(на С++).
2. Разработать интерфейс проекта, позволяющий:
- задавать размерность и качество массива;
- осуществлять выбор алгоритма сортировки для исследования;
- осуществлять вывод информации о результатах исследования алгоритма сортировки (исходный и отсортированный массив, пошаговую работу алгоритма сортировки (при небольшой размерности массива), показатели качества работы алгоритма сортировки).
3. Создать подпрограмму для генерации целочисленного массива различного качества. В подпрограмме предусмотреть:
- задание размерности массива;
- задание диапазона чисел массива;
- создание массива с равномерно распределенными случайными числами;
- создание упорядоченного по возрастанию массива;
- создание упорядоченного по убыванию массива.
4. Создать подпрограмму, реализующую алгоритм сортировки в соответствии с вариантом. В подпрограмме предусмотреть:
- определение числа сравнений;
- определение числа обменов;
- определение суммы обменов и сравнений;
- сортировку массива по возрастанию.
5. Использовать 2 метода сортировки :
-Сортировка методом пузырька (простым обменом).
-Сортировка простым выбором
Интервал чисел А,В [0,600]
1ok вне форума Ответить с цитированием
Старый 18.09.2010, 13:39   #2
1ok
 
Регистрация: 01.02.2009
Сообщений: 8
По умолчанию

using System;
using System.Collections.Generic;
using System.Text;

namespace S_Sorting
{
class Sorting // простые алгоритмы сортировки
{
/// <summary>
/// сортировка простым выбором
/// </summary>
/// <param name="ar">массив для сортировки</param>
public static void SimpleChoiceSort(int[] ar)
{
int c,
tmp = 0; // temp variable
for (int i = 0; i < ar.Length - 1; ++i)
{
c = i;
tmp = ar[i];
for (int j = i + 1; j < ar.Length; ++j)
{
if (ar[j] < tmp) // выбор максимального элемента
{
c = j; // индекс максимального элемента
tmp = ar[j]; // максимальный элемент
}
}
// обмен - постановка текущего максимального элемента на свое место
ar[c] = ar[i];
ar[i] = tmp;
}
}// SimpleChoiceSort
/// <summary>
/// сортировка простой вставкой
/// </summary>
/// <param name="ar">массив для сортировки</param>
public static void SimpleInsertSort(int[] ar)
{
int tmp; //temp variable
for (int i = 1; i < ar.Length; ++i)
{
tmp = ar[i];
for (int j = i - 1; (j >= 0); --j)
{
if (ar[j] > tmp)// сравнение
{ // обмен
ar[j + 1] = ar[j];
ar[j] = tmp;
}
else break;
}
}
}// SimpleInsertSort
/// <summary>
/// сортировка простым обменом - метод пузырька
/// </summary>
/// <param name="ar">массив для сортировки</param>
public static void BubbleSort(int[] ar)
{
int tmp; //temp variable
for (int i = 1; i < ar.Length; ++i)
{
for (int j = ar.Length - 1; j >= i; --j)
{
if (ar[j - 1] > ar[j])// сравнение
{ // обмен
tmp = ar[j - 1];
ar[j - 1] = ar[j];
ar[j] = tmp;
}
}
}
}// BubbleSort

}
}
может это поможет в чем то???
1ok вне форума Ответить с цитированием
Старый 18.09.2010, 14:10   #3
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

выполню за вознаграждение
ICQ 395-546-218
rrrFer вне форума Ответить с цитированием
Старый 18.09.2010, 14:37   #4
1ok
 
Регистрация: 01.02.2009
Сообщений: 8
По умолчанию

может кто написать код сортировки простым выбором?
1ok вне форума Ответить с цитированием
Старый 18.09.2010, 15:03   #5
sasharu9
 
Регистрация: 28.04.2010
Сообщений: 5
По умолчанию

Цитата:
Сообщение от 1ok Посмотреть сообщение
может кто написать код сортировки простым выбором?

//Сортировка выбором

void select(int *items[])
{
int a,b,c,exchange,min;
for(a=0;a<count-1;a++){
c=a;
min=items[a];
for(b=a+1;b<count;b++){
if(items[b]<min)
{
min=items[b];
exchange=1;
}
if(exchange)
{
items[c]=items[a];
items[a]=min;
}
}
}
sasharu9 вне форума Ответить с цитированием
Старый 18.09.2010, 15:27   #6
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

1ok
Цитата:
может кто написать код сортировки простым выбором?
пробовать найти ответ самостоятельно не модно?
http://www.google.ru/search?hl=ru&so...ка+вы&gs_rfai=
rrrFer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Алгоритмы сортировки обмена данных sid1868 Общие вопросы C/C++ 1 30.03.2010 21:42
Разработать алгоритмы указанных в варианте методов сортировки Lems11 Помощь студентам 1 21.12.2009 18:47
Алгоритмы сортировки и поиска информации jedi1990 Фриланс 9 15.10.2009 23:17
Алгоритмы сортировки и поиска информации jedi1990 Помощь студентам 1 22.09.2009 12:35