Пример #1
0
int main(){
	struct cirListDeque* q = createCirListDeque(); 
	addBackCirListDeque(q, (TYPE)1);
	addBackCirListDeque(q, (TYPE)2);
	addBackCirListDeque(q, (TYPE)3);
	addFrontCirListDeque(q, (TYPE)4);
	addFrontCirListDeque(q, (TYPE)5);
	addFrontCirListDeque(q, (TYPE)6);
	printCirListDeque(q);
	printf("\n");
	//6, 5, 4, 1, 2, 3
	printf("%g\n", frontCirListDeque(q));
	printf("\n");
	//6
	printf("%g\n", backCirListDeque(q));
	printf("\n");
	//3
	removeFrontCirListDeque(q);
	//5, 4, 1, 2, 3
	removeBackCirListDeque(q);
	//5, 4, 1, 2
	printCirListDeque(q);
	printf("\n");
	//5, 4, 1, 2
	reverseCirListDeque(q);
	//2, 1, 4, 5
	printCirListDeque(q);
	printf("\n");
	//2, 1, 4, 5
	deleteCirListDeque(q);
	return 0;
}
Пример #2
0
int main(){
    struct cirListDeque* q = createCirListDeque();
    addBackCirListDeque(q, (TYPE)1);
    addBackCirListDeque(q, (TYPE)2);
    addBackCirListDeque(q, (TYPE)3);
    addFrontCirListDeque(q, (TYPE)4);
    addFrontCirListDeque(q, (TYPE)5);
    addFrontCirListDeque(q, (TYPE)6);
    printCirListDeque(q);
    printf("%g\n", frontCirListDeque(q));
    printf("%g\n", backCirListDeque(q));
    removeFrontCirListDeque(q);
    removeBackCirListDeque(q);
    printCirListDeque(q);
    reverseCirListDeque(q);
    printCirListDeque(q);
    return 0;
}
Пример #3
0
int main () {
	struct cirListDeque testDeque;

	printf("Testing Deque ADT based on Circularly-Doubly-Linked List \n");
	/*Initialize the deque */
	initCirListDeque(&testDeque);
	/*Add 3 to the back */
	addBackCirListDeque(&testDeque, 3);
	/*Add 4 to the back */
	addBackCirListDeque(&testDeque, 4);
	/*Add 5 to the back */
	addBackCirListDeque(&testDeque, 5);

	/*Should print 3.0  4.0  5.0 */
	printCirListDeque(&testDeque);
	
	/*Add 2 to the front */
	addFrontCirListDeque(&testDeque, 2);
	/*Add 1 to the front */
	addFrontCirListDeque(&testDeque, 1);

	/*Should print 1.0, 2.0, 3.0,  4.0,  5.0 */
	printCirListDeque(&testDeque);

	/*Should print front: 5.0; back: 1.0 */
	printf("front: %g; back: %g\n\n", frontCirListDeque(&testDeque), backCirListDeque(&testDeque));
	/*Remove the back of the deque */
	removeBackCirListDeque(&testDeque);
	/*Should print front: 5.0; back: 2.0 */
	printf("front: %g; back: %g\n\n", frontCirListDeque(&testDeque), backCirListDeque(&testDeque));
	/*Remove the front of the deque */
	removeFrontCirListDeque(&testDeque);
	/*Should print front: 4.0; back: 2.0 */
	printf("front: %g; back: %g\n\n", frontCirListDeque(&testDeque), backCirListDeque(&testDeque));
	freeCirListDeque(&testDeque);

	return EXIT_SUCCESS;
}
Пример #4
0
int main()
{
	struct cirListDeque* q = createCirListDeque(); 
	addBackCirListDeque(q, (TYPE)1);				//adds to back of deque 3 times
	addBackCirListDeque(q, (TYPE)2);
	addBackCirListDeque(q, (TYPE)3);
	addFrontCirListDeque(q, (TYPE)4);				//adds to front of deque 3 times
	addFrontCirListDeque(q, (TYPE)5);
	addFrontCirListDeque(q, (TYPE)6);				// should end up being 6 5 4 1 2 3
	printf("Printing list.\n");
	printCirListDeque(q);
	printf("\nDisplaying front and back of list.");
	printf("\nFront: %g", frontCirListDeque(q));
	printf("\nBack: %g\n", backCirListDeque(q));
	removeFrontCirListDeque(q);						// removes 6
	removeBackCirListDeque(q);						// removes 3
	printf("\nList with front and back removed.\n");
	printCirListDeque(q);
	printf("\nList will get reversed.\n");
	reverseCirListDeque(q);							// reverses deque should be 2 1 4 5
	printCirListDeque(q);
	printf("\n");
	return 0;
}