/*******************************************************************************
* 数据结构教学程序:线性容器及算法测试程序
* 用于测试线性容器(动态数组、链表)及静态查找和排序算法
* 版权声明:您可以随意使用、复制或传播本代码,但请保留原作者姓名
* 作者:成都理工大学信息科学与技术学院-软件工程系-邓飞 2015.09
*******************************************************************************/
#include <stdio.h>
#include "gvector.h"
#include "glist.h"
#include "galgo.h"
#include "gqueue.h"
#include "gstack.h"
bool greaterThan(const float &d1, const float &d2)
{
return d1 > d2;
}
int main()
{
int i;
GList<float> list;
for(i=0; i<5; i++)
{
list.pushBack(float(i));
}
list.insert(3, 9);
list.pushFront(-1);
list.popFront();
list.remove(3);
GList<float>::Iterator it = list.begin();
it++;
it++;
list.insert(it, 9);
sort(list.begin(), list.end());
it = list.begin();
while(it != list.end())
{
printf("%.2f ", *it);
++it;
}
GVector<int> v;
for(i=0; i<5; i++)
{
v.pushBack(5-i);
}
printf("\n");
GVector<int>::Iterator vit = v.begin();
v.remove(vit);
v.insert(vit, 9);
sort(v.begin(), v.end());
vit = v.begin();
while(vit != v.end())
{
printf("%d ", *vit);
vit++;
}
vit = search(v.begin(), v.end(), 9);
if(vit != v.end())
{
printf("\n*it=%d\n", *vit);
}
GQueue<int> queue;
queue.enqueue(1);
int j = queue.head();
queue.dequeue();
GStack<int> stack;
stack.push(10);
GStack<int> stack2(stack);
j = stack2.pop();
return 0;
}
评论0
最新资源