Skip to content

Commit eef6ab8

Browse files
sorting in c#
1 parent 72cb320 commit eef6ab8

File tree

5 files changed

+414
-0
lines changed

5 files changed

+414
-0
lines changed

c#/sorting c#/bubble sort in c#.txt

+85
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
using System;
2+
3+
namespace bubble_sort
4+
5+
{
6+
7+
class Program
8+
9+
{
10+
11+
static void Main(string[] args)
12+
13+
{
14+
15+
Program p = new Program();
16+
17+
int[] arr = new int[50]; // declaring array to store elements
18+
19+
int n;
20+
21+
Console.WriteLine("Enter no of elements you want to store in an array");
22+
23+
n = Convert.ToInt32(Console.ReadLine()); // taking input from user
24+
25+
Console.WriteLine("Enter elements in an array");
26+
27+
for (int i = 1; i <= n; i++)
28+
29+
{
30+
31+
arr[i] = Convert.ToInt32(Console.ReadLine());
32+
33+
}
34+
35+
p.bubblesort(arr, n);
36+
37+
Console.ReadKey();
38+
39+
}
40+
41+
public void bubblesort(int[] arr, int n)
42+
43+
{
44+
45+
int temp;
46+
47+
for (int i = 1; i <= n; i++)
48+
49+
{
50+
51+
for (int j = 1; j <= n - i; j++)
52+
53+
{
54+
55+
if (arr[j] > arr[j + 1])
56+
57+
{
58+
59+
temp = arr[j];
60+
61+
arr[j] = arr[j + 1];
62+
63+
arr[j + 1] = temp;
64+
65+
}
66+
67+
}
68+
69+
}
70+
71+
Console.WriteLine("Array after sorting");
72+
73+
for (int i = 1; i <= n; i++)
74+
75+
{
76+
77+
Console.WriteLine(arr[i]);
78+
79+
}
80+
81+
}
82+
83+
}
84+
85+
}

c#/sorting c#/heap sort.txt

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
using System;
2+
class heapsort
3+
{
4+
int[] r = { 2,5,1,10,6,9,3,7,4,8};
5+
public void hsort()
6+
{
7+
int i, t;
8+
for (i = 5; i >= 0; i--)
9+
{
10+
adjust(i, 9);
11+
}
12+
for (i = 8; i >= 0; i--)
13+
{
14+
t = r[i + 1];
15+
r[i + 1] = r[0];
16+
r[0] = t;
17+
adjust(0, i);
18+
}
19+
}
20+
private void adjust(int i, int n)
21+
{
22+
int t, j;
23+
try
24+
{
25+
t = r[i];
26+
j = 2 * i;
27+
while (j <= n)
28+
{
29+
if (j < n && r[j] < r[j + 1])
30+
j++;
31+
if (t >=r[j])
32+
break;
33+
r[j / 2] = r[j];
34+
j *= 2;
35+
}
36+
r[j / 2] = t;
37+
}
38+
catch (IndexOutOfRangeException e)
39+
{
40+
Console.WriteLine("Array Out of Bounds ", e);
41+
}
42+
}
43+
public void print()
44+
{
45+
for (int i = 0; i < 10; i++)
46+
{
47+
Console.WriteLine("{0}", r[i]);
48+
}
49+
50+
}
51+
public static void Main()
52+
{
53+
heap obj = new heap();
54+
Console.WriteLine("Elements Before sorting : ");
55+
obj.print();
56+
obj.hsort();
57+
Console.WriteLine("Elements After sorting : ");
58+
obj.print();
59+
Console.Read();
60+
}
61+
}

c#/sorting c#/merge sort in c#.txt

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using System.Text;
5+
6+
namespace MergeSort
7+
{
8+
class MergeSort
9+
{
10+
static public void MainMerge(int[] numbers, int left, int mid, int right)
11+
{
12+
int[] temp = new int[25];
13+
int i, eol, num, pos;
14+
eol = (mid - 1);
15+
pos = left;
16+
num = (right - left + 1);
17+
18+
while ((left <= eol) && (mid <= right))
19+
{
20+
if (numbers[left] <= numbers[mid])
21+
temp[pos++] = numbers[left++];
22+
else
23+
temp[pos++] = numbers[mid++];
24+
}
25+
while (left <= eol)
26+
temp[pos++] = numbers[left++];
27+
while (mid <= right)
28+
temp[pos++] = numbers[mid++];
29+
for (i = 0; i < num; i++)
30+
{
31+
numbers[right] = temp[right];
32+
right--;
33+
}
34+
}
35+
36+
static public void SortMerge(int[] numbers, int left, int right)
37+
{
38+
int mid;
39+
if (right > left)
40+
{
41+
mid = (right + left) / 2;
42+
SortMerge(numbers, left, mid);
43+
SortMerge(numbers, (mid + 1), right);
44+
MainMerge(numbers, left, (mid + 1), right);
45+
}
46+
}
47+
48+
static void Main(string[] args)
49+
{
50+
51+
Console.Write("\nProgram for sorting a numeric array using Merge Sorting");
52+
Console.Write("\n\nEnter number of elements: ");
53+
int max = Convert.ToInt32(Console.ReadLine());
54+
int[] numbers = new int[max];
55+
for (int i = 0; i < max; i++)
56+
{
57+
Console.Write("\nEnter [" + (i + 1).ToString() + "] element: ");
58+
numbers[i] = Convert.ToInt32(Console.ReadLine());
59+
}
60+
Console.Write("Input int array : ");
61+
Console.Write("\n");
62+
for (int k = 0; k < max; k++)
63+
{
64+
Console.Write(numbers[k] + " ");
65+
Console.Write("\n");
66+
}
67+
Console.WriteLine("MergeSort By Recursive Method");
68+
SortMerge(numbers, 0, max - 1);
69+
for (int i = 0; i < max; i++)
70+
Console.WriteLine(numbers[i]);
71+
Console.ReadLine();
72+
}
73+
}
74+
}

c#/sorting c#/quick sort in c#.txt

+155
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
using System;
2+
3+
using System.Collections.Generic;
4+
5+
using System.Linq;
6+
7+
using System.Text;
8+
9+
10+
11+
namespace QuickSort
12+
13+
{
14+
15+
class QuickSort
16+
17+
{
18+
19+
static public int Partition(int[] numbers, int left, int right)
20+
21+
{
22+
23+
int pivot = numbers[left];
24+
25+
while (true)
26+
27+
{
28+
29+
while (numbers[left] < pivot)
30+
31+
left++;
32+
33+
34+
35+
while (numbers[right] > pivot)
36+
37+
right--;
38+
39+
40+
41+
if (left < right)
42+
43+
{
44+
45+
int temp = numbers[right];
46+
47+
numbers[right] = numbers[left];
48+
49+
numbers[left] = temp;
50+
51+
}
52+
53+
else
54+
55+
{
56+
57+
return right;
58+
59+
}
60+
61+
}
62+
63+
}
64+
65+
66+
67+
static public void SortQuick(int[] arr, int left, int right)
68+
69+
{
70+
71+
// For Recusrion
72+
73+
if (left < right)
74+
75+
{
76+
77+
int pivot = Partition(arr, left, right);
78+
79+
80+
81+
if (pivot > 1)
82+
83+
SortQuick(arr, left, pivot - 1);
84+
85+
86+
87+
if (pivot + 1 < right)
88+
89+
SortQuick(arr, pivot + 1, right);
90+
91+
}
92+
93+
}
94+
95+
96+
97+
static void Main(string[] args)
98+
99+
{
100+
101+
Console.Write("\nProgram for sorting a numeric array using Quick Sorting");
102+
103+
Console.Write("\n\nEnter number of elements: ");
104+
105+
int max = Convert.ToInt32(Console.ReadLine());
106+
107+
108+
109+
int[] numbers = new int[max];
110+
111+
112+
113+
for (int i = 0; i < max; i++)
114+
115+
{
116+
117+
Console.Write("\nEnter [" + (i + 1).ToString() + "] element: ");
118+
119+
numbers[i] = Convert.ToInt32(Console.ReadLine());
120+
121+
}
122+
123+
124+
125+
Console.Write("Input int array : ");
126+
127+
Console.Write("\n");
128+
129+
for (int k = 0; k < max; k++)
130+
131+
{
132+
133+
Console.Write(numbers[k] + " ");
134+
135+
Console.Write("\n");
136+
137+
}
138+
139+
140+
141+
Console.WriteLine("QuickSort By Recursive Method");
142+
143+
SortQuick(numbers, 0, max - 1);
144+
145+
for (int i = 0; i < max; i++)
146+
147+
Console.WriteLine(numbers[i]);
148+
149+
Console.ReadLine();
150+
151+
}
152+
153+
}
154+
155+
}

0 commit comments

Comments
 (0)