Sorting in C – সর্ট ইন সি

Sorting in C : হল কোন একটি অ্যারের ডাটারকে , ছোট থেকে বড়(ascending order) অথবা বড় থেকে ছোট(descending order) সাজানো।

The types of sorting in C are listed below.

  1. Bubble Sort. …
  2. Selection Sort. …
  3. Quick Sort. …
  4. Merge Sort. …
  5. Heapsort. …
  6. Insertion Sort.

আমরা এই এখানে Selection Sort ব্যবহার করব।

সাজানো না হওয়া অংশ থেকে বারবার ন্যূনতম উপাদান খুঁজে বের করে শুরুতে বসিয়ে অ্যারেটিকে আরোহী ক্রমে সাজানো যেতে পারে। অ্যালগরিদম একটি প্রদত্ত অ্যারেতে দুটি সাব্যারে বজায় রাখে। ইতিমধ্যে সাজানো হয় যা subarray.

অবশিষ্ট subarray যা সাজানো হয় না. বাছাই বাছাইয়ের প্রতিটি পুনরাবৃত্তিতে, সাজানো না করা subarray থেকে ন্যূনতম উপাদান (আরোহী ক্রম বিবেচনা করে) বাছাই করা হয় এবং সাজানো subarray সরানো হয়।

নীচে উপরের পদ্ধতির বাস্তবায়ন হল:


// C program to sort the array in an
// ascending order using selection sort

#include <stdio.h>

void swap(int* xp, int* yp)
{
	int temp = *xp;
	*xp = *yp;
	*yp = temp;
}

// Function to perform Selection Sort
void selectionSort(int arr[], int n)
{
	int i, j, min_idx;

	// One by one move boundary of unsorted subarray
	for (i = 0; i < n - 1; i++) {

		// Find the minimum element in unsorted array
		min_idx = i;
		for (j = i + 1; j < n; j++)
			if (arr[j] < arr[min_idx])
				min_idx = j;

		// Swap the found minimum element
		// with the first element
		swap(&arr[min_idx], &arr[i]);
	}
}

// Function to print an array
void printArray(int arr[], int size)
{
	int i;
	for (i = 0; i < size; i++)
		printf("%d ", arr[i]);
	printf("\n");
}

// Driver code
int main()
{
	int arr[] = { 0, 23, 14, 12, 9 };
	int n = sizeof(arr) / sizeof(arr[0]);
	printf("Original array: \n");
	printArray(arr, n);

	selectionSort(arr, n);
	printf("\nSorted array in Ascending order: \n");
	printArray(arr, n);

	return 0;
}

Output

Original array: 
0 23 14 12 9 

Sorted array in Ascending order: 
0 9 12 14 23

কাজ

  • সবগুলি কোড দুবার করে লিখে রান কর ।
  • সর্ট কর অ্যারে টি।
  • Binary Search কি? লিখে গুগুল কর । আরও কিছু রেজাল্ট প্রেক্টিস কর।

নিচের লংক গুলি ফলো করো

রেফারেন্স লিংক ওয়েবসাইট

Leave a Reply