• Nie Znaleziono Wyników

Sortowanie tablicy – przykład programu sterującego

N/A
N/A
Protected

Academic year: 2021

Share "Sortowanie tablicy – przykład programu sterującego"

Copied!
2
0
0

Pełen tekst

(1)

Sortowanie tablicy – przykład programu sterującego

#include <iostream.h>

#include <stdlib.h>

void exch(int &A, int &B) { int t = A; A = B; B = t; } void compexch(int &A, int &B) { if (B < A) exch(A, B); } void sort(int a[], int l, int r) {

kod odpowiedniego sortowania }

void main()

{

int i; int a[30];

cout << "Oto elementy tablicy: ";

randomize ();

for(i=0; i<30; i++) {

a[i]=random(100);

cout << a[i] << " ";

} cout <<"\n";

sort( a, 0, 29);

for (i = 0; i < 30; i++) cout << a[i] << " ";

cout << endl;

}

Sortowanie przez selekcję void selection(int a[], int l, int r)

{ for (int i = l; i < r; i++) { int min = i;

for (int j = i+1; j <= r; j++) if (a[j] < a[min]) min = j;

exch(a[i], a[min]);

} }

Sortowanie bąbelkowe void bubble(inta[], int l, int r)

{ for (int i = l; i < r; i++) for (int j = r; j > i; j--) compexch(a[j-1], a[j]);

}

(2)

Sortowanie Shella dla ciągu 1,4,13,40,...

void shellsort(int a[], int l, int r) { int h;

for (h = 1; h <= (r-l)/9; h = 3*h+1) for ( ; h > 0; h /= 3)

for (int i = l+h; i <= r; i++) { int j = i; Item v = a[i];

while (j >= l+h && v < a[j-h]) { a[j] = a[j-h]; j -= h; } a[j] = v;

} }

---

Sortowanie przez wstawianie void sort(int a[], int l, int r)

{ for (int i = l+1; i <= r; i++) for (int j = i; j > l; j--) compexch(a[j-1], a[j]);

}

template <class Item>

void insertion(Item a[], int l, int r) { int i;

for (i = r; i > l; i--) compexch(a[i-1], a[i]);

for (i = l+2; i <= r; i++) { int j = i; Item v = a[i];

while (v < a[j-1])

{ a[j] = a[j-1]; j--; } a[j] = v;

} }

Cytaty

Powiązane dokumenty

++i lub --i wykonują się najpierw, zanim wykona się wyrażenie, w którym użyto te operatory.. Operatory inkrementacji i dekrementacji

void println() Terminate the current line by writing the line separator string.. void println(boolean x) Print a boolean and then terminate

// utworzono tablicę 10 referencji typu String, naleŜy dla kaŜdego elementu tablicy przydzielić pamięć. • Przydział pamięci na elementy

wtedy rozpoczynają proces plastyczności polegający na zerwaniu połączenia z neuronem, który go słabiej pobudza niż wejście oraz połączenie się z nowo utworzonym neuronem,

[∗∗] Wykaż, że algorytm sortowania bąbelkowego na ciągu n–elementowym wykona liniową liczbę za- mian elementów w przypadku (chociaż liczba porównań zawsze będzie

[∗∗] Wykaż, że algorytm sortowania bąbelkowego na ciągu n–elementowym wykona liniową liczbę za- mian elementów w przypadku (chociaż liczba porównań zawsze będzie

Po uruchomieniu programu ABAQUS wybraniu Create Model Database w ikonkę opisaną jako Create Part się w obszarze narzędzi lub dwukrotne kliknięcie na drzewie poleceń (Model

Sortowanie przez scalanie (ang. merge sort), to rekurencyjny algorytm sortowania danych, mający zastosowanie przy danych dostępnych sekwencyjnie (po kolei, jeden element na raz),