Iam actually using Susanna Epps book right now. Our professor made us read the Schuams Outline of Discrete Math but I just couldn't engage with the content of that book, so i decided to read Susanne Epp's book instead.
I also rented a copy of Grimaldi's Discrete Math textbook. My conclusion is this, Susanna Epp's textbook is perfect for those beginning in Discrete Math. It is filled with examples. The practice problems in each section have detailed answers that allow you to grasp the problem solving mechanisms behind each problem. I also believe that the ordering of the chapter flows really smoothly. I would definitely self-study with Susanna Epp's book because it is well written and self-contained. She also does not assume that the reader knows any discrete math.
After reading Epp's book, I would recommend getting Grimaldi's discrete math textbook. It covers a lot more advanced topics and it has interesting and challenging problems. My course of action is to finish Epp's book and then reading the later chapters of Grimaldi's book.
I like Lehman, Leighton and Meyer's "Mathematics for Computer Science" a lot. It is lecture notes, updated roughly once a year in fall (modify the URL in the obvious way). Very thorough (aimed at Computer Science applications, obviously), it covers much of the whole range of discrete math and related areas. Not exactly a one-semester course. Nice examples, clear explanations. Might need to complement it with the exams and homework for this (or some other) course. Best of all, can't beat the price.
Ralph Peter Grimaldi (born January 1943) is an American mathematician specializing in discrete mathematics who is a full professor at Rose-Hulman Institute of Technology.[1] He is known for his textbook Discrete and Combinatorial Mathematics: An Applied Introduction [1], first published in 1985 and now in its fifth edition, and his numerous research papers.
He was born and raised in New York City and graduated from what is now the State University of New York at Albany in 1964 (B.S.) and 1965 (M.S.), then earned his Ph.D. in Mathematical Sciences in 1972 at New Mexico State University under Ray Mines. He previously taught at the State University of New York at Oswego and has held sabbatical appointments at Clemson University and New Mexico State University, as well as in industry.
This is a prerequisite course for almost all subjects/topics of computer science that you will study in the forthcoming semester. The word discrete in discrete mathematics has dual meaning: one being an antonym of the word continuous, which signifies, we are going to deal with the number line comprising of integers. The second being a discrete bunch of prerequisite topics for computer science, stitched together and offered as a subject. Most of the topics that will be covered in the course do not assume any prerequisites and our discussions will resemble puzzle solving sessions. The subject is very fascinating and it has been my observation that many graduating students regard this as one of their favourite subjects. Apart from aiding as a prerequisite to other courses, discrete mathematics helps in heightening the mathematical aptitude of a student. If you ever enjoyed puzzle solving, you will like the ride through this subject. The treatment of the subject is excellent in the prescribed text book (mentioned below). The text book gets to the level of a college fresher without assuming any preliminary knowledge. The motivation of concepts is through several worked examples which makes learning easy and fun. The textbook has a historical account that appears at the end of every chapter, which I recommend you all to read without fail. There are several nice books and popular science articles on this subject which I can pass on to you people if you are interested. You are encouraged to read up extra material and discuss the same with the course instructor and TA beyond the class and office hours. We sincerely hope that you enjoy this course at its fullest.
Primary Textbook
The textbook for the course is Discrete and Combinatorial Mathematics, 5th Edition by Ralph P. Grimaldi. We will cover most of the chapters from this text book. This book is available on Flipkart and Amazon. I personally liked the e-version of the book which is available for a nominal price on Amazon (click here,). This e-version opens on your desktop/tablet. I strongly suggest that you buy an e-version instead of a hard copy as it helps you annotate the text and helps you search through the text easily. There is a third version of this book available as a PDF document online (if you google), although I am not sure whether this is a legal or a pirated one.
The course will comprise of several quizzes, you can expect 1 to 2 short duration quizzes every week. Quizzes will be announced (at least 1 day in advance). It will mostly be on the day of tutorials.
With the intention of protecting the interest of students and fostering a dynamic learning experience, the instructor plans to set up the following mechanisms/protocols to ensure that the students get the best from this course:
1. In case the student finds it difficult to understand any of the concepts covered in the class, s/he is requested to email the instructor asking for help within 5 working days from the day of the class. The instructor along with the TA will make sincere attempts to ensure that a time is scheduled within the next 1 week to clarify the doubt or redo that part of teaching, if required.
3. Irrespective of any academic/official/personal engagements, the instructor will ensure that he is present in the class before the commencement time of the class. In no case will the instructor be late by even a minute. Also, under no circumstance will the instructor continue to engage the class a minute beyond the scheduled 50 minutes.
5. The instructor maintains an anonymous feedback form at the following link: You are requested to post your concerns/complaints/feedback here. Every feedback we receive will be discussed in the class and solved. 6.The instructor will, under no cost, change the marks distribution, syllabus or introduce any perk/point not listed in this document. after 10th of January 2017.
7. The instructor guarantees that the tutorial sheets will serve as a model for the kind of questions that will appear in the tests and exams. The student should never be in the state of not knowing how to prepare and what to prepare. You are guaranteed to do very well if you are attending the classes, reading all the topics from the references provided and solving all the tutorial problems.
8. The course assumes that the student is spending about 4 to 5 hours per week outside the class hours in understanding the subject material. In case the student is struggling beyond these many hours, it can be detrimental to his/her overall progress in the semester. In such a situation, you are requested to meet the instructor at the earliest possible time by fixing an appointment. The instructor will evaluate your preparedness for the topics covered in the course and will advise you on ways to improve your understanding of the course content.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
I want to read a book on data structures and algorithms, but I would like to know if there is any specific topic in discrete mathematics considered very important as a prerequisite to understanding the materials presented in data structure book.
"Discrete math" is more a buzzword that contains the basics from a dozen different topics (logic, algorithms, theory of computation, number theory, digital design, etc.) all marginally related to programming. Reading a discrete mathematics book would be about the same as reading the first chapter or two of books on all these topics.
The most essential thing to understand is boolean logic, which you're probably already pretty good at if you're self-taught; algorithms are also very important. The theory of computation stuff is fairly interesting, but not really useful unless you're really into algorithms, or want to write your own parser. Number theory is good to learn if you want to get into cryptography.
Mathematical induction is probably the single most important concept nobody has mentioned yet. It is essential for understanding and proving the properties of algorithms on trees and other inductively defined data structures.
Having said this, a good data-structure/algorithm book often has one or two introductory chapters and sections in most other chapters that are aimed at bringing the reader up to speed on some of the relevant discrete math topics. But IMO, it is better to know this stuff just to have a more thorough understanding, if you have the time and inclination. Otherwise, I don't think you will find yourself stuck if you have a good book.
PS:The topics I mention are from these two books:"Discrete and Combinatorial Mathematics: An Applied Introduction" by Grimaldi"Discrete Mathematics and its Applications" by Rosen("Concrete Math" is way too heavy to read just for data structures)
if you are interested not only in data structure but in all computer science fields, discrete math include Boolean algebra and it's application that is the basis of computer architecture and assembly language, but i don't think it's related to data structures and algorithms
Hello, I graduated a year ago with a B.S. degree in biological science. I've taken some basic computer sciences courses on the introductory level, and have found myself working in a computational biology lab.
Right now, I have the chance to take discrete mathematics as a night course. From what I understand this will help me understand biological algorithms much better. Is this a good idea, to take discrete math, if I want to gain further insight into biological algorithms?
3a8082e126