MIT's discrete math course [1] is listed as a prerequisite for the algorithms course so Problem Set 0 doesn't seem unreasonable in that case.
Requiring an intro programming class and a discrete math class won't require you to delay teaching algorithms for "several years". Maybe just a semester or two.
Universities can also start teaching basic data structures and some algorithms in the programming classes. For example Stanford teaches some in CS106B Programming Abstractions [2] and then goes into more detail in CS161 Design and Analysis of Algorithms [3].
Requiring an intro programming class and a discrete math class won't require you to delay teaching algorithms for "several years". Maybe just a semester or two.
Universities can also start teaching basic data structures and some algorithms in the programming classes. For example Stanford teaches some in CS106B Programming Abstractions [2] and then goes into more detail in CS161 Design and Analysis of Algorithms [3].
[1] https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-...
[2] https://see.stanford.edu/course/cs106b
[3] https://stanford-cs161.github.io/winter2022/