Two national U.S holidays from that list are President's Day, (usually people have that day off), and Independence day (4th of July). If you are trying to gain citizenship, I encourage you to really delve into what those holidays are and the history behind them. It will make them easier to identify and easier to understand. Plus if you want to be a citizen, it's essential to know basic U.S history.
1. Thanksgiving and Christmas actually do have the word "Day" on the end of them, but most people shorten them down to "Thanksgiving" and "Christmas" rather than saying "Christmas Day" and "Thanksgiving Day". It's also a matter of common sense and basic English grammar. If you look at any other holiday that has the word "day" on the end, such as Labor Day, you couldn't shorten it to just "Labor" because people wouldn't know what you are talking about. People can shorten Christmas day to Christmas because everyone knows what you're talking about. Same goes for something like Memorial Day. You wouldn't just say "Memorial", you need to say the full "Memorial Day".
2. The apostrophe signifies possession. For example, on President's Day, we in the United States celebrate our Presidents of years past. So, it is technically the day of the Presidents, or their day, so we say "President's Day", signifying that the day is in possession of the past Presidents. Sounds confusing, but it makes more sense once you experience it. Same goes for New Year's Day. It is the 1st day of the New Year, the real opening of the new year, so that day is in possession by the new year, so we call it "New Year's Day." Think of it like if you had a sandwich and your name was, for example, Tom. The sandwich that you have would be Tom's sandwich. You wouldn't write it like "Tom sandwich", because that wouldn't make sense and it wouldn't be grammatically correct.
I hope these answers help you, and I wish you look on gaining citizenship in this great country!
U.S citizen born in the United States of America