第二次打开博客时已经是半个月了,万事开头难啊,前几天一直在忙公司的事情,没有什么太多的时间来写。
废话少说,言归正传,从这一篇正式开始算法导论的学习,由于前几个章节大都关于数组的排序。第一篇不讲任何算法,主要先搭建一个环境,可以输入数组并排序,并有对应的编辑框进行输出。
如图所示,是我自己搭建的一个数组的输入环境,输入框为输入的数据,用空白将一个个的数据分开。
具体的代码如下:
//获得编辑框中的数字串,并将其转换为数组
//输入:编辑框中的数字串,数字之间以空白分开
//输出;得到的数组保存在成员变量result这个指针中,返回值为数组的元素个数
int Isort::getarray(QString str)
{
int count;
list = str.split(' ');
for(count = 0; count < list.count(); count++)
{
if(list.at(count).isEmpty())
{
list.removeAt(count);
count--;
}
}
result = (int *)malloc(sizeof(int)*list.count());
for(count = 0; count < list.count(); count++)
{
result[count] = list.at(count).toInt();
}
return list.count();
}
在主函数中,通过调用getraary函数就可以将输入编辑框的字符串转换为数组存储在全局数组result中,然后返回值是数组的个数。
到此,输入环境搭建完毕,以后数组的输入都可以通过这个编辑框来完成。