Понеделник, 26 Юли 2010 23:58

задачи със сортиране

Написана от 
Оценете
(5 гласа)

Имате предварително въведен едномерен масив с елементи от интервала [-100..100]
Да се състави програма на C++, която сортира вектора по метода на мехурчето.
Пример:
5,6,8,1,2,3,4,7,9,11
Изход:
1,2,3,4,5,6,7,8,9,11
Решение (свободен достъп)

Да се състави програма на C++ за сортиране в низходяща последователност на предварително въведен едномерен масив от символи.
Програмата да реализира метода "сортиране чрез пряка размяна" (метод на мехурчето).
Пример:
S,s,G,H,J,N,Z,x,c,r
Изход:
x,s,r,c,Z,S,N,J,H,G
Решение

Имате предварително въведен едномерен масив с елементи от интервала [1..100]
Да се състави програма на C++, чрез която елементите на масива да бъдат сортирани по метода "сортиране чрез вмъкване".
Пример:
15; 6; 8; 1; 2; 3; 4; 7; 9; 11;
Изход:
1; 2; 3; 4; 6; 7; 8; 9; 11; 15;
Решение

Имате предварително въведен едномерен масив с елементи от интервала [1..100]
Да се състави програма на C++ за сортиране на стойностите на масива чрез метода "сортиране чрез пряка селекция".
Пример:
15; 6; 8; 1; 2; 3; 4; 7; 9; 11;
Изход:
1; 2; 3; 4; 6; 7; 8; 9; 11; 15;
Решение

Да състави програма на C++, чрез която в едномерен масив се въвеждат естествени числа от интервала [0..250]
Програмата да сортира въведените стойностите на масива чрез метода "зайци и костенурки".
Решение

Да се състави програма на C++, която като входни данни има 2 едномерни сортирани масива, съдържащи естествени числа от интервала [-5000 + 5000]. В общия случай масивите са с различен брой променливи.
Да се изведе на екрана резултата от обединението на 2-та масива като елементите на новообразувания масив са също сортирани.
Пример:
{1,3,5,7,9,11,113} и {2,4,6,8,10,12,14,16,18,20}
Изход:
1,2,3,4,5,6,7,8,9,10,11,12,14,16,18,20,113
Решение

Да се състави програма на C++, която сортира по метода на мехурчето предварително въведен двумерен масив с естествени числа от интервала [-100..100].
Сортирането да се извърши по редове/колони.
Пример:
15; 16; 8; 1;
2; 3; 4; 7;
9; 11; 19; 6;
Изход:
1; 2; 3; 4;
6; 7; 8; 9;
11; 15; 16; 19;
Решение

Да се състави програма на C++, която сортира на масив, съдържащ естествени числа от интервала [0..250].
Методът на сортиране да бъде "Сортиране чрез клатене".
Пример:
217 84 0 169 224 228 108 212 214
145 31 77 211 241 245 192 77 186
Изход:
31 41 77 77 84 108 145 169 186
205 211 212 214 217 224 228 241 245
Решение

През 1959 г. Шел предлага идея за подобрение на метода за сортиране чрез вмъкване. Идеята е да се извършва многократно сортиране чрез пряко вмъкване на част от елементите на масива със стъпка 8, която постепенно намалява и накрая достига 1 .
Да се състави програма на C++, която сортира масив, съдържащ естествени числа от интервала [0..150].
Да се приложи метод Shell.
Пример:
41 17 34 100 119 124 78 108 112 14 5 95 31 27 61
Изход:
5 14 17 27 31 34 41 61 78 95 100 108 112 119 124
Решение

Ще наричаме площадка непрекъсната последователност от елементи с равни стойности.
Да се състави програма на C++, която проверява коя е най-дългата площадка в предварително въведен масив от естествени числа от интервала [0 - 5000].
Програмата да извежда началния вид на масива и най-дългата площадка в него.
Пример:
1 3 3 7 9 9 9 9 11 11 12 14
Изход:
Най-дългата площадка е: 4 елемента
Брой на площадките: 3
Решение

Да се състави програма на C++, която проверява дали: предварително въведен масив от естествени числа от интервала [0..5000] е сортиран във възходящ ред.
Програмата да извежда съобщения и в двата случая.
Пример:
1 3 5 7 9 11 10
Изход:
11 > 10
Елементите на масива не са напълно подредени.
Решение

Да се състави програма на C++, която обръща елементите на предварително въведен масив от естествени числа от интервала [0..5000] в обратна последователност.
Програмата да извежда началния и крайния вид на масива.
Пример:
1 3 5 7 9 10 11 12
Изход:
12 11 10 7 9 5 3 1
Решение

Да се състави програма на C++, която сортира едномерен масив с естествени числа от интервала [0..200].
Да се приложи метод "Пирамидално сортиране".
Наричан е също и сортиране на Уйлямс
Пример:
41 67 134 100 169 124 78 158 162 64 105 145 81 27 161 91 195 142 27 36 191
Изход:
27 27 36 41 64 67 78 81 91 100 105 124 134 142 145 158 161 162 169 191 195
Решение

Да се състави програма на C++, която сортира едномерен масив с естествени числа от интервала [0..150].
Да се приложи метод "Двоично сортиране" - метод на Хоор.
Пример:
41 67 34 0 69 24 78 58 62 64 5 45 81 27 61 91 95 42 27 36 91 4 2 53 92
Изход:
0 2 4 5 24 27 27 34 36 41 42 45 53 58 61 62 64 67 69 78 81 91 91 92 95
Решение

Имате предварително въведена и сортирана редица от естествени числа от интервала [1..100].
Елементите в редицата не са непременно различни.
Да се състави програма на C++, чрез която се изчислява броя на площадките в редицата, т.е. колко е броят на отделните последователности от равни числа.
Пример: 11,12,14,14,16,16,16,18,18,19,22,23,23,27,27
Изход: 5
Решение

През лятото Иван се ровил в прашните сандъци на тавана и открил много мъниста (синци). Били с еднаква форма, но с различна големина, като цвят сини и червени. Решил на сестра си гердан да направи.
От двата края са най-малките размери и продължават към центъра с нарастваща големина. Отляво червени, отдясно сини.
Има два проблема - всяко парче е с различна големина - но това си е бял кахър. Всеки дефект е ефект. Вторият проблем, обаче е по-голям. Как да избере последователността за поставяне на мънистата.
Да се състави програма на C++, чрез която се сортират по метода на мехурчето 10 естествени числа от интервала [10..90], от които 5 са нечетни, а 5 четни и са предварително въведени. В лявата част да са нечетните числа в нарастващ ред, а в дясната четните в намаляващ
Пример:
15,16,48,45,32,37,77,72,80,85
Изход:
15,37,45,77,85,80,72,48,32,16
Решение

Иван и Мария - батко и сестричка решили купон да вдигат.
Предварително се разбрали кой кого ще кани - Иван само момчета, а Мария само момичета.
Дошла им идея да подредят гостите по височина. Всички поканени имали ръст - естествено число от интервала [150..200]. Ще им помогнете ли да групират гостите си по двойки - момче и момиче?
Да се състави програма на C++, чрез която се генерират случайни естествени числа 10 четни и 10 нечетни.
Числата да се подредят последователно четно-нечетно във възходящ ред на височината на гостите от двата пола.
Пример:
Височина на поканените гости:
M201; L186; M163; L154; M207; L180; M153; L186; M183; L152;
M185; L170; M161; L194; M197; L164; M175; L214; M161; L186;
Изход:
M 153; L 152
M 161; L 154
M 161; L 164
M 163; L 170
M 175; L 180
M 183; L 186
M 185; L 186
M 197; L 186
M 201; L 194
M 207; L 214
Решение

Имате предварително въведени стойности в правоъгълна матрица с M броя редове и N броя колони. Елементите й са реални числа от интервала [-99.9..99.9]. Общият брой на елементите е от интервала [10..70].
Да се състави програма, чрез която по алгоритъма за прякото вмъкване (метод на картоиграча) се извърши подреждане на елементите във възходящ ред. Да се изведе първата половина от елементите.
Пример:
-1.5; 2.1; -3.5; 4.3;
-2.3; 5.2; 6.1; 7.6;
-3.3; -4.4; -5.6; 7.2;
Изход:
-5.6, -4.4, -3.5, -3.3, -2.3, -1.5
Решение

Имате предварително въведени стойности в двумерен масив. Елементите му са реални числа от интервала [-99.9..99.9]. Броят на елементите е от интервала [10..70].
Да се състави програма, чрез която по алгоритъма за прякото вмъкване (метод на картоиграча) се извърши подреждане на елементите в низходящ ред. Да се изведат елементите от указан интервал.
Пример:
-1.5, 2.1, -3.5, 4.3
-2.3, 5.2, 6.1, 7.6
-3.3,-4.4,-5.6, 7.2
Интервал: 5,7
Изход: 2.1, -1.5, -2.3
Решение

Прочетена 7568 пъти Последно променена в Сряда, 25 Ноември 2015 12:47