The key to learning data structures is to start with something small, and then build on that. Let's start with a simple C
struct:
struct Person {
char name[100];
int age;
};
This data structure represents a person. You need to make sure you understand simple structure concepts such as these, and then you can move to bigger things.
When you start talking about data structures like stacks and queues, for example, first try to understand conceptually what the data structure is doing. For example, with a stack, we are using the LIFO principle, that is, Last In First Out. With a queue, we are using the FIFO principle (first in first out).
And then there's the one that trips a lot of people up, the linked list. You need to understand pointers well for this one, so before trying to tackle linked lists, start with something simple:
int* x;
int y = 10;
x = &y;
You should be able to look at that code and immediately know what it's doing. If you can't, then you're not ready to move to more advanced data structures like linked lists.
The main point I'm trying to make is you need to get the basics down cold, then build on those. It's also important to keep up with the class very diligently, ask your teacher or tutor if you are having troubles, and make sure you are on track each week and don't fall behind.
Computer Science classes are much like Math classes, each week usually builds on everything you've learned from the previous N weeks. So if you aren't understanding a key concept, like pointers for example, then you are going to have major struggles the remainder of the semester.