コード例 #1
0
ファイル: sort.cpp プロジェクト: amoylel/crisscross
int TestSort_LList(Sorter<int> *_sorter)
{
	LList<int>     *llist = new LList<int>();

	for (int i = 0; i < SORT_ITEMS; i++) {
		llist->insert(rand());
	}

	llist->sort(_sorter);

	for (int i = 0; i < SORT_ITEMS - 1; i++) {
		TEST_ASSERT(llist->get(i) <= llist->get(i+1));
	}

	delete llist;
	return 0;
}
コード例 #2
0
int TestInsertionSort_LList()
{
	LList<int>         *llist = new LList<int>();

	llist->insert(4);
	llist->insert(2);
	llist->insert(0);
	llist->insert(3);
	llist->insert(1);

	InsertionSort<int> *is = new InsertionSort<int>();
	llist->sort(is);
	delete is;

	for (int i = 0; i < 5; i++) {
		TEST_ASSERT(llist->get(i) == i);
	}

	delete llist;
	return 0;
}
コード例 #3
0
ファイル: quicksort.cpp プロジェクト: prophile/crisscross
int TestQuickSort_LList()
{
	LList<int>     *llist = new LList<int>();

	llist->insert(4);
	llist->insert(2);
	llist->insert(0);
	llist->insert(3);
	llist->insert(1);

	QuickSort<int> *qs = new QuickSort<int>();
	llist->sort(qs);
	delete qs;

	for (int i = 0; i < 5; i++) {
		TEST_ASSERT(llist->get(i) == i);
	}

	delete llist;
	return 0;
}
コード例 #4
0
ファイル: shellsort.cpp プロジェクト: prophile/crisscross
int TestShellSort_LList()
{
	LList<int>     *llist = new LList<int>();

	llist->insert(4);
	llist->insert(2);
	llist->insert(0);
	llist->insert(3);
	llist->insert(1);

	ShellSort<int> *ss = new ShellSort<int>();
	llist->sort(ss);
	delete ss;

	for (int i = 0; i < 5; i++) {
		TEST_ASSERT(llist->get(i) == i);
	}

	delete llist;
	return 0;
}