|
Swd019 guruh talabasi Gulmurodov O`rolbek
|
bet | 2/2 | Sana | 30.11.2023 | Hajmi | 237,04 Kb. | | #108801 |
Bog'liq 4 chi variant 7.docx76554 Algebra 4, jjj, BETLIK ingliz, BETLIK kurs ishi, moliyaviy hisobga kirishПодробнее
samsung.com
Реклама
16
17 #include using namespace std; int main() { int n; cin>>n; int a[n]; for (int i = 0; i < n; i++) cin>>a[i]; for (int i = n-1; i >= 1; i--) { for (int j = 0; j < i; j++) { if (a[j] > a[j+1]) { int t = a[j]; a[j] = a[j+1]; a[j+1] = t; } for (int i = 0; i < n; i++) cout<
19 Birlashtirish orqali saralash(Merge Sort) algoritmi. Bu algoritm Jon fon Neyman tamonidan 1946 yilda taklif qilingan. Jon Fon Neyman Vengriyalik ma- tematika, kvant fizikasi, funksional analiz, toplamlar nazariyasi, eko- nomika, informatika kabi fanlarga munosib hissa qoshgan.
20 Bolib tashla va hukmronlik qil metodi. Algoritmlarni qurishning asosiy metodlaridan biri. Murakkab masalani yechish uchun, uni oddiyroq bolaklarga ajratish kerak. Massivni ham huddi shunday saralash mumkin: Uni ikkita bolakga ajratamiz. Bolaklarni alohida saralaymiz. Saralangan massivlarni birlashtiramiz.
21 Saralangan massivlarni birlashtirish. Ikkita saralangan massiv berilgan. Ularni birlashtirib shunday massiv hosil qilish qilish kerakki, u yana saralangan bolsin. Xar safar hali ikki massivning hali korilmagan qismlaridagi birinchi ikki elementni taqqoslaymiz. Ulardan kichigini olamiz.
22
23#include
// Tanlash orqali saralash algoritmi (Selection sort) funksiyasi
void selectionSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
if (arr[i] % 2 == 0) {
for (int j = i + 1; j < n; j++) {
if (arr[j] % 2 == 0 && arr[j] < arr[i]) {
std::swap(arr[i], arr[j]);
}
}
} else {
for (int j = i + 1; j < n; j++) {
if (arr[j] % 2 != 0 && arr[j] > arr[i]) {
std::swap(arr[i], arr[j]);
}
}
}
}
}
int main() {
int n;
// Massiv uzunligini kiritamiz
std::cout << "Massiv uzunligini kiriting: ";
std::cin >> n;
int arr[n];
// Massiv elementlarini kiritish
std::cout << "Massiv elementlarini kiriting: ";
for (int i = 0; i < n; i++) {
std::cin >> arr[i];
}
// Tanlash orqali saralash algoritmi (Selection sort) orqali massivni saralash
selectionSort(arr, n);
// Natijalarni chiqarish
std::cout << "Toq sonlar: ";
for (int i = 0; i < n; i++) {
if (arr[i] % 2 != 0) {
std::cout << arr[i] << " ";
}
}
std::cout << "\nJuft sonlar: ";
for (int i = 0; i < n; i++) {
if (arr[i] % 2 == 0) {
std::cout << arr[i] << " ";
}
}
return 0
|
| |