The three textbooks I used for my sophomore level courses at Purdue were Linear Circuit Analysis 2nd Ed (DeCarlo/Lin), Microelectronic Circuit Design 4th Ed (Jaeger/Blalock), Digital Design 4th Ed (Wakerly) (for ECE201, ECE202, ECE255, ECE270).
I wasn't too thrilled with DeCarlo's book, but the subject matter (linear circuit analysis) is very important for a solid foundation in electrical engineering. Jaeger's book is very thorough, and very heavy. It'll have most things you'll want to know about diodes, transistors, CMOS logic, and amplifiers. I really didn't touch Wakerly's book, but that's because the notes and labs for the class were that good (
https://engineering.purdue.edu/ece270/ ). Note that the course website is reused for each semester, so in January the content may be reset.
Hope this helps.
__________________
Be Healthy. Never Stop Learning. Say It Like It Is. Own It.

Like our values? Flexware Innovation is looking for Automation Engineers. Check us out!