These seem reasonable questions to ask a junior. Personally I don’t really rate algorithm questions but for a junior you can’t really test anything outside of logic.
Algorithm design is a fairly common, well defined, largely solved problem that in practice can be googled or worked out without too much effort. Being able to solve these doesn’t really impress me from a hiring point of view (even though they are fun to do and watch).
Give me a developer who can navigate the fuzzy world of ambiguity, tradeoffs and architecture any day — even if they fail FizzBuzz.
I’ve seen too many people ace algorithm interviews that don’t write testable code, and don’t understand basic principles like hexagonal architecture, SOLID, CQRS, DDD etc.