You could AP or CLEP your way out of the majority of your general education classes if you're motivated.
But ignoring that, a huge and often overlooked component of understanding is time. You need the entire 3 or 4 years even if technically you could cram all your CS classes into 2 (well you really couldn't because of dependencies). If you do it right, you'll have CS classes mixed in with your other classes, so that you'll pretty much always be studying CS over the entire 4 years. In a decent CS program, you'll also spend far more time on CS projects out of class than you will on homework in other classes.
The average person will probably spend 75% of their total active time on CS classes.
As far as intro classes go, there was maybe 1 class where I learned almost nothing and I had been programming professionally for a while before I went back. The whole point for me was to fill in the gaps of things I didn't know I didn't know.
But ignoring that, a huge and often overlooked component of understanding is time. You need the entire 3 or 4 years even if technically you could cram all your CS classes into 2 (well you really couldn't because of dependencies). If you do it right, you'll have CS classes mixed in with your other classes, so that you'll pretty much always be studying CS over the entire 4 years. In a decent CS program, you'll also spend far more time on CS projects out of class than you will on homework in other classes.
The average person will probably spend 75% of their total active time on CS classes.
As far as intro classes go, there was maybe 1 class where I learned almost nothing and I had been programming professionally for a while before I went back. The whole point for me was to fill in the gaps of things I didn't know I didn't know.