There is no correct way to solve difficult math problems, but there are many ways that you can improve your problem sovling abilities. These are applicable regardless of the type of mathematics!
(1) Practice basic skills. This is one of the biggest ways to improve your problem solving. Unfortunately it's also one of the biggest challenges to fix. Many math problems, especially in high school and early college, are based on pattern recognition. This means that the more problems that you do and actively try and recognize the problem and its solution method, the easier time you will have in recognizing how to solve new problems.
How much is enough for pattern recognition? It depends on the person, but on average I recommend you do all of your homework that was assigned every night. Then, a week later, you redo the same homework. Then you review any problems that you were stuck on before the test/exam time. If this seems like a lot of work, you are absolutely right. Most students can't/won't spend this kind of dedication over a semester on a math class. However, for those that can, it pays off. I've seen people who have had their marks jump by 20% over a single semester by doing just this.
(2) Willingness to solve the problem. I had recently read a statistic that the average time people spend solving problems before looking up the answer is about 10-20 seconds, and the average time for those who actually found a solution was about 10 minutes. I have no idea on the accuracy of this statistic, but it seems about right when I compare with my students' progress.
You need to understand that your teacher is assigning problems that always have a solution. Spend the time working with the problem for at least 10 minutes before looking up the answer, calling your friends, throwing the book across the room, etc. This takes practice and it is challenging. However, you can do it! The more time you spend doing this, the better you will get at it. It could take months to get your problem solving better, but this is key, because without the understanding that problems have solutions, you will find it more difficult to solve those problems.
(3) Work Backwards from the Solution. Start with what you are trying to find. Since it is often is not immediately obvious what is needed, make a list of those things. Then for each of those, think of what it is you need to find each of them, and so on. Continue until you have found the solution for one of the items. Now start working back until you eventually find the overally solution.
(4) Don't be afraid to ask for help. After everything else fails, and you have really struggled with the problem, look for a solution from someone else. But, learn from the solution. Add it to your toolbox of what to try next time. Don't just say "I could never think of that" because now you have the opportunity to apply this new solution to other problems.