It's not necessarily the "wrong" definition, but it's not a very helpful one. Terms like general and specific (and category) are relative classifications. So, tossing them into a definition without context or further qualification doesn't tell us much.
A better definition would simply be: A set of steps to solve a problem.
From there, if a set of steps solves a problem, it's an algorithm. If you understand the problem as being a general problem, then it's a general algorithm. If you see it as a specific problem, it's a specific algorithm.
If we put your example in the spectrum going from pretty specific to pretty general, it might look something like this:
-- MORE SPECIFIC --
> Classify the number `1` as *Even* or *Odd*
> Classify a number `N` as *Even* or *Odd*
> Classify a number `N`
> Classify something `O`
-- MORE GENERAL --
You might come up with different generalizations -- hopefully better ones.
You can certainly create an algorithm to solve any one of those problems. And you can arguably call any one of the problems general or specific to suit your needs. But, what the author probably intends to say is, if the algorithm doesn't solve the problem as generally as it is presented, it's not a meaningful algorithm.