맨 아래 다섯개 함수에요


자바는 이정도는 아니었는데 c언어가 훨씬 어렵네요.. 수업시간에 너무 열심히 안해서그런가


#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

#include <stdlib.h>

 

typedef struct NODE

{

           struct NODE *fwd;

           struct NODE *bwd;

           int value;

} Node;

 

void traverseForward(Node root)

{

           Node *q = root.fwd;

           while (q)

           {

                     printf("%d ", q->value);

                     q = q->fwd;

           }

}

 

void initializeList(Node *root)

{

           root->fwd = NULL;

           root->bwd = NULL;

           root->value = 0;

}

 

int insertFirst(Node *root, int val)

{

           Node *node = (Node *)malloc(sizeof(Node));

           if (node == NULL) return 0;

           node->value = val;

           /* For a previously empty list */

           if (root->fwd == NULL)

           {

                     root->fwd = node;

                     root->bwd = node;

                     node->fwd = NULL;

                     node->bwd = NULL;

           }

           /* For a list with at least one node */

           else

           {

                     /* previous first node now new node's successor */

                     root->fwd->bwd = node;

                     node->fwd = root->fwd;

                     /* no predecessor to the new first node */

                     node->bwd = NULL;

                     /* root points to this new first */

                     root->fwd = node;

           }

           return 1;

}

 -----Given------

void traverseBackward (Node root)

int insertLast (Node *root, int val)

void deleteFirst (Node *root)

void deleteLast (Node *root)

void deleteAll (Node *root)