-
Notifications
You must be signed in to change notification settings - Fork 272
Expand file tree
/
Copy pathsorting_techniques.cpp
More file actions
116 lines (92 loc) · 1.61 KB
/
sorting_techniques.cpp
File metadata and controls
116 lines (92 loc) · 1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include<iostream>
using namespace std;
#define MAX 5
class sort
{
public:
int arr[MAX];
void input_array();
void selection_sort_ascen();
void selection_sort_descen();
};
void sort :: input_array()
{
cout<<"\nEnter elements in array: ";
for(int i=0;i<MAX;i++)
{
cin>>arr[i];
}
cout<<"\nYour array is as follows: \n";
for(int i=0;i<MAX;i++)
{
cout<<"|"<<arr[i]<<"|";
}
}
void sort :: selection_sort_ascen()
{
for(int i=0;i<=MAX-2;i++)
{
for(int j=i+1;j<MAX;j++)
{
if(arr[i]>arr[j])
{
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
cout<<"\n\nSorted array is as follows: \n";
for(int i=0;i<MAX;i++)
{
cout<<"|"<<arr[i]<<"|";
}
}
void sort :: selection_sort_descen()
{
for(int i=0;i<=MAX-2;i++)
{
for(int j=i+1;j<MAX;j++)
{
if(arr[i]<arr[j])
{
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
cout<<"\n\nSorted array is as follows: \n";
for(int i=0;i<MAX;i++)
{
cout<<"|"<<arr[i]<<"|";
}
}
int main()
{
int size,ch;
char start='y';
sort s;
while(start=='y')
{
cout<<"\n\n1. Selection sorting (Ascending)\n2. Selection sorting (Descending)";
cout<<"\n\nEnter your choice: ";
cin>>ch;
switch(ch)
{
case 1:
s.input_array();
s.selection_sort_ascen();
break;
case 2:
s.input_array();
s.selection_sort_descen();
break;
default:
cout<<"\nIncorrect choice !!!";
}
cout<<"\n\nDo you want to continue (y/n): ";
cin>>start;
}
return 0;
}