algorytm.org

Implementacja w C/C++



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Sortowanie przez wstawianie (insertionsort) - Implementacja w C/C++
Ocena użytkownikóww: *****  / 25
SłabyŚwietny
Nadesłany przez Marian, 19 lutego 2011 12:59
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.

Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.

insert_1_c.cpp:
// sortowanie przez wstawianie
// www.algorytm.org

#include<iostream>
using namespace std;

int main()
{
	int ilosc_liczb, tymczasowa, i,j;
	cout << "Podaj ilosc liczb do posortowania: ";
	cin >> ilosc_liczb;
	int *tablica = new int [ilosc_liczb]; // utworzenie dynamicznej tablicy na 'ilosc_liczb' elementow

	for (i = 0; i < ilosc_liczb; i++)
	{
		cout << "Podaj liczbe: ";
		cin >> tablica[i];
	}

	for (i = 1; i < ilosc_liczb; i++)
	{
		tymczasowa = tablica[i]; // przechowanie elementu tablicy z zmiennej pomocniczej
		for (j = i-1; j >= 0; j--)
		{
			if (tymczasowa < tablica[j]) // zamiana miejsc
				tablica[j+1] = tablica[j];
			else 
				break;
		}
		tablica[j+1] = tymczasowa;
	}

	for (i = 0; i < ilosc_liczb; i++) // wypisanie posortowanej tablicy
		cout << "tablica[" << i << "] = " << tablica[i] << endl;

	delete [] tablica; // zwolnienie tablicy zaalokowanej dynamicznie

    return 0;
}
Dodaj komentarz