该算法的最复杂的部分是嵌套循环。外环(nstartindex)的步骤,通过每个元素一个接一个。内循环(ncurrentindex)发现最小的元素在数组中从nstartindex和集合点它变nsmallestindex。最小的指数,然后开始指数互换。然后,外环(nstartindex)提出的一个元素,并重复该过程。
测验
1)选择排序的数组:{ 30,60,20,50,40,10 }。显示每个交换之后发生的阵列。
2)改写选择排序码以上按降序排序(最大的数首)。尽管这可能看起来复杂,其实是非常简单的。
class String
{
private:
char *m_chString; // a dynamically allocated string
int m_nLength; // the length of m_chString
public:
int GetLength() { return m_nLength; }
};
getlength()是访问函数简单地返回m_nlength价值。
访问功能,通常有两种:getters和setters。干将是函数简单地返回私有成员变量的值。制定功能,只需设置一个私有成员变量的值。
这里有一个例子类,具有一定的getters和setters:
class Date
{
private:
int m_nMonth;
int m_nDay;
int m_nYear;
public:
// Getters
int GetMonth() { return m_nMonth; }
int GetDay() { return m_nDay; }
int GetYear() { return m_nYear; }
// Setters
void SetMonth(int nMonth) { m_nMonth = nMonth; }
void SetDay(int nDay) { m_nDay = nDay; }
void SetYear(int nYear) { m_nYear = nYear; }
};