int main(){

    struct linkedList *deque;
    linkedListInit(&deque);


    linkedListAddFront(&deque, 1);
    linkedListAddFront(&deque, 2);
    linkedListAddFront(&deque, 3);


    printf("front: %d\n", linkedListFront(&deque));
    printf("back: %d\n", linkedListBack(&deque));

    linkedListAddBack(&deque, 8);
    linkedListAddBack(&deque, 7);
    linkedListAddBack(&deque, 6);

    printf("front: %d\n", linkedListFront(&deque));
    printf("back: %d\n", linkedListBack(&deque));

    linkedListRemoveBack(&deque);

    printf("front: %d\n", linkedListFront(&deque));
    printf("back: %d\n", linkedListBack(&deque));

    print(&deque);

return 0;
}
Beispiel #2
0
int main(int argc, char* argv[])
{
	#ifdef MEMORY_TEST_INCLUDED
	// Memory used BEFORE creating LinkedList
	long m1 = getMemoryUsage();
	#endif

	if (argc != 2)
	{
		printf("Usage: %s <number of elements to add>\n", argv[0]);
		return 1;
	}

	struct LinkedList* list = linkedListCreate(); 
	int numElements = atoi(argv[1]);
	for (int i = 1 ; i <= numElements; i++)
	{
		linkedListAddBack(list, (TYPE)i);
		linkedListRemoveFront(list);
	}

	linkedListAddBack(list, (TYPE)10);
        linkedListPrint(list);

	#ifdef MEMORY_TEST_INCLUDED
	// Memory used AFTER creating LinkedList
	long m2 = getMemoryUsage();
	printf("Memory used by LinkedList: %ld KB \n", m2 - m1);
	#endif

	double t1 = getMilliseconds(); // Time before contains()
	for (int i = 0; i < numElements; i++)
	{
		linkedListContains(list, i);
	}
	double t2 = getMilliseconds(); // Time after contains()
	printf("Time for running contains() on %d elements: %g ms\n", numElements, t2 - t1);

	linkedListDestroy(list);

	return 0;
}
/**
 * Adds a link with the given value to the bag.
 */
void linkedListAdd(struct LinkedList* list, TYPE value)
{
	// FIXME: you must write this
	linkedListAddBack(list, value);

}