İstediğiniz kaynak kodu yükleniyor!

Yüklemede…

Her şey hazırlandı
Tek yapman gereken yapıştırıp çalıştırmak.

Veri Yapıları Hızlı Sıralama

//Omer Alp KIRAY//
#include <stdio.h>
#include <conio.h>
void hizliSirala(int[], int, int);
int bolme(int[], int, int);

void main() {
	int ElemanSayisi;
	printf("Eleman Sayisini giriniz: ");
	scanf_s("%d", &ElemanSayisi);
	int* dizi = (char *)malloc((ElemanSayisi * sizeof(char)));

	for (int sayac = 0; sayac < ElemanSayisi; sayac++) {
		printf("%d. Elemani giriniz: ", sayac + 1);
		scanf_s("%d", &dizi[sayac]);
	}
	printf("\nDizinin sirasiz hali: ");
	for (int sayac = 0; sayac < ElemanSayisi; ++sayac) {
		printf("\t%d", dizi[sayac]);
	}
	hizliSirala(dizi, 0, (ElemanSayisi-1));
	printf("\nDizinin sirali hali: ");
	for (int sayac = 0; sayac < ElemanSayisi; ++sayac) {
		printf("\t%d", dizi[sayac]);
	}
	_getch();
}

void hizliSirala(int dizi[], int ilk, int son) {
	int sayac2;
	if (ilk < son) {
		sayac2 = bolme(dizi, ilk, son);
		hizliSirala(dizi, ilk, sayac2 - 1);
		hizliSirala(dizi, sayac2 + 1, son);
	}
}

int bolme(int dizi[], int ilk, int son) {
	int gecis, sayac, sayac2, sayac3;
	gecis = dizi[ilk];
	sayac = ilk;
	sayac2 = son + 1;
	while (1) {
		do
			++sayac;
		while (dizi[sayac] <= gecis&&sayac <= son);
		do
			--sayac2;
		while (dizi[sayac2] > gecis);
		if (sayac >= sayac2) {
			break;
		}
		sayac3 = dizi[sayac];
		dizi[sayac] = dizi[sayac2];
		dizi[sayac2] = sayac3;
	}
	sayac3 = dizi[ilk];
	dizi[ilk] = dizi[sayac2];
	dizi[sayac2] = sayac3;
	return sayac2;
}

Bilgisayar mühendisliği dersinde verilen Veri Yapıları dersi içerisinde oluşturulmuş: Hızlı sıralama algoritmasıdır. Ekran Çıktısı:

Ekran Çıktısı

Anasayfa!

Anasayfa

Manzara-1.
May 14th, 2016
Manzara-2.
May 15th, 2016
Manzara-3.
May 16th, 2016

İletmek İçin