What books would you recommend for someone starting B.Sc in Computer Science?

My Personal Info:
I am currently looking at B.Sc in Computer Science (Games), which is computer science, accept for the last year which is tailored more towards game dev.

I have a fair bit of programming experience with Unity and other things. But as far as CS goes, have little to no experience. I have just finished reading 'Introduction to Computation and Programming Using Python'. But am after something more in-depth and maths based.

My maths experience is quite poor which concerns me, as I have only studied maths up to GCSE level. (GCSE = English, there is no American equivalent. Taken at age 16)

Understanding CS is a broad topic, I was just looking for some reading that could introduce me to some key ideas that could be covered in an undergraduate course at uni.

Thanks for your time,
Magnus :)

  • 3
    $\begingroup$ No single book can possibly cover a whole academic field. But the list here might give some pointers. $\endgroup$ – David Richerby Dec 6 '13 at 13:40
  • $\begingroup$ @DavidRicherby Sweeet, thanks I'll check those out :) $\endgroup$ – Magnus Dec 6 '13 at 15:57
  • $\begingroup$ the tcs.se list on top books cited by DR is good but they're fairly advanced + theoretical... also the Guttag book you cite is actually quite mathematical looking at the TOC on amazon... $\endgroup$ – vzn Dec 6 '13 at 18:14
  • $\begingroup$ Check "The Art of Computer Programming"; if there's one book (it's actually 4 volumes) that I'd take with me when I decide to be a C.S monk in a mountain, it'd be that book. $\endgroup$ – Fingolfin Dec 7 '13 at 5:55

Since you like to work through books, meaning you will spend a lot of time with one book and dig into the details using the book, I would recommend that your next book be

Introduction to algorithms by Cormen

I don't have this book as it didn't exist when I went to school but learning algorithms and data structures is where you will start at the University level once you have one programming language learned.

This is the kind of book that once you put it on your bookshelf and you will keep grabbing again and again for the rest of your life if you continue to program.

I know you asked about math, but if you can do problem solving, and converting word problems to math, then learning the math you need for programming is not something to worry about. In math you take word problems and convert them into the language of math, with programming you take word problems and convert them into algorithms and data structures. The thinking is the basically the same, one produces an abstract result and the other a program that can be run on a computer.

  • $\begingroup$ Based on a quick preview on amazon, this looks ideal! I'll investigate a bit more, before buying this book. Thanks for helping me out, really appreciate it :) $\endgroup$ – Magnus Dec 6 '13 at 17:03
  • $\begingroup$ Just for the record I am also looking at this book Computer Science: An Overview 11th Edition $\endgroup$ – Magnus Dec 6 '13 at 17:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.