Bubble Sort, Insertion Sort and Selection Sort

So I'm new to C++ and am needing a little help. All feedback is welcome.
I am suppose to create an AList object and then use that AList object to make the following method calls in order:

Read
Print
BubbleSort
Print
Read
Print
InsertionSort
Print
Read
Print
SelectionSort
Print


This is what I have so far:
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
  #include <iostream>

 using namespace std;

 const int MLS = 50;
 typedef int element;
 const element SENTINEL = -1;

 class AList {
 private:
 element items [MLS];
 int size;
 void Swap(int pos1, int pos2); 
 int Read_int();
 element Read_element();
 public:
 void Read();
 void Print();
 void BubbleSort();
 void InsertionSort();
 void SelectionSort();
 };
 int main() {
 

 AList B;
 B.Read();
 B.Print();
 B.BubbleSort();
 B.InsertionSort();
 B.SelectionSort();
 }

 void AList::Read() {
 element userval;
 cout<< "Enter elements : ";
 while ((userval!=SENTINEL) && (size<MLS)) {
 items [size] = userval;
 size ++;
 }
 }
 void AList::Print(){
 for (int i=0;i<size;i++)
 cout<< items[i]<<endl;
 }
 void AList::BubbleSort() {
 for (int i=0; size-1; i++){
 for (int j=0; j<size-1-i; j++) 
 if (items[j]>items[j+1])
 Swap (j, j+1);

 else
 ;
 }
 }
 void AList::Swap(int pos1, int pos2) {
 element temp;
 temp = items[pos2];
 items[pos2]=items[pos1];
 items[pos1]=temp;
 }


 void AList::InsertionSort() {
 int j;
 bool done;
 for (int i=1; i<size; size++)
 j=i;
 done = false;
 while ((j>=1) && (!done))
 if (items[j] < items[j-1]) {
 Swap (j,j-1);
 j--;
 }
 else 
 done=true;
 }

 void AList::SelectionSort() {
 int maxpos;
 for (int i = size-1; i<0; i--) {
maxpos = 0;
 for (int j=1; j<=i; j++)
 if (items[j] < items[maxpos])
 maxpos = j;
 else;
 Swap(maxpos, i);
 }
 }





I don't think that I'm doing it in the order that needs to be done and I'm also having a problem printing everything. Please help!
Last edited on
Topic archived. No new replies allowed.