Discrete Mathematical Algorithm, and Data Structure
β Scribed by Sanjib Sinha
- Publisher
- leanpub.com
- Year
- 2020
- Tongue
- English
- Leaves
- 405
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Table of Contents
Table of Contents
1. Introduction to the Discourse
Is Discrete Mathematics enough to study Computer Science?
A short Introduction to Discrete Mathematics
What is Discrete Mathematics
What is the relationship between Discrete Mathematics and Computer Science
Introducing necessary conceptions
QUIZZ and Challenge on Chapter One
2. Introduction to Programming Language and Boolean Algebra
Logic, Mathematics, and Programming Language
Introduction to Boolean Algebra
QUIZZ and Challenge on on Chapter Two
3. De Morganβs Laws on Boolean Algebra, Logical Expression, and Algorithm
Logical Expression
Short Circuit Evaluation
Syntax, Semantics and Conditional Execution
Why we need Control Constructs
Discrete Mathematical Notations and Algorithm
QUIZZ and Challenge on Chapter Three
4. Data Structures in different Programming languages
Mean, Median and Mode
Array, the First Step to Data Structure
Let us understand some Array features
Set Theory, Probability and Array
Skewed Mean, Maximized Median
Complex Array Algorithm
QUIZZ and Challenge on Chapter Four
printing result
5. Data Structures: Abstractions and Implementation
How objects work with each other
More Algorithm and Time Complexity
Introducing Data Structures
How Calculus and Linear Algebra are Related to this Discourse
QUIZZ and Challenge on Chapter Five
6. Data Structures in Detail
Frequently Asked Questions about Data Structures
Abstract Data Type (ADT)
Linear Data Structures
Modeling of a Structure
ArrayList to overcome limitations of Array
ArrayList or LinkedList, which is faster?
Collection Framework in programming languages
Stack and Queue in Java
Deque, a high-performance Abstract Data Type
QUIZZ and Challenge on Chapter Six
Challenge 1 : Can we test in a program whether the Stack has been overflowed or not?
Challenge 2 : Can you convert an array to a queue and use all the queue methods to manipulate that array?
Challenge 3 : Why LinkedList consumes less memory than ArrayList. Write a program and explain why it happens.
Challenge 4 : Can you give examples of hybrid linear data structure that provides all the capabilities of stacks and queues under one roof?
7. Algorithm, Data Structure, Collection Framework and Standard Template Library (STL)
Introducing Algorithm Library
Different types of Algorithms
Binary Tree and Data Structure
Collection Framework in Java
Discrete Mathematical Abstractions and Implementation through Java Collection
Comparator, Comparable and Iterator
Standard Template Library in C++
QUIZZ on Chapter Seven
Challenge 1 : Standard Template Library (STL) provides many generic versions of standard algorithms that replace our low-level plumbing. Can you show the difference by writing code.
Challenge 2 : Can you prove with an example how the STL makes a difference when we want to sort a list of data.
Challenge 3 : Using recursion in programing is closer to our discrete mathematical definitions. Can you prove it?
Challenge 4 : Recursive algorithm should have a base case. Write a program where we can proceed towards the base case and a condition to stop the recursion.
Challenge 5 : Can you prove that Discrete Mathematics, data structure and algorithm are inter-connected?
Challenge 6 : Can you create a general template class and method that will allow to pass any data of your choice.
8. Time Complexity
Order of n, or O(n)
Big O Notation
QUIZZ on Chapter Eight
Challenge 1 : Data structures are discrete structures and hence, the algorithms are all about discrete structures. Write a program to establish a relationship between algorithms and discrete mathematics
Challenge 2 : How we can get the total of a series of positive integers that starts from 0 and ends at 5. Can it be done recursive way?
Challenge 3 : Detect the main problem in the code below and rewrite it in proper way.
9. Set, Symmetric Difference and Propositional Logic
Why Set is important in Data Structures
How Symmetric Difference and Propositional Logic combine
QUIZZ on Chapter Nine
Challenge 1 : Why the Set implementation βHashSetβ is better than the general-purpose Set implementation βTreeSetβ? Can you compare and prove that?
Challenge 2 : Can you combine Symmetric Difference and Propositional Logic in one program? You can write it in any programming language.
Challenge 3 : In discrete mathematical paradigms, Set abstraction is basically chaotic, and unordered. However, no duplicate element is allowed in the world of Set. Can you prove it?
10. Combinatorics and Counting, Permutation and Combinations
Permutation and Combination
QUIZZ on Chapter ten
Challenge 1 : How many ways we can rearrange 5 balls.
Challenge 2 : Suppose you have a string ``abcd''. You are aked to rearrange the String. How many ways could you rearrange the String when repetition is allowed? Here repetition means, you can rearrange this way: bacd, cdba, dbac, etc.
Challenge 3 : Can you show the difference between two types of permutation,where repetition is not allowed and allowed.
What Next
π SIMILAR VOLUMES
Conveying ideas in a user-friendly style, this book has been designed for a course in Applied Algebra. The book covers graph algorithms, basic algebraic structures, coding theory and cryptography. It will be most suited for senior undergraduates and beginning graduate students in mathematics and com
Conveying ideas in a user-friendly style, this book has been designed for a course in Applied Algebra. The book covers graph algorithms, basic algebraic structures, coding theory and cryptography. It will be most suited for senior undergraduates and beginning graduate students in mathematics and com
<p>Conveying ideas in a user-friendly style, this book has been designed for a course in Applied Algebra. The book covers graph algorithms, basic algebraic structures, coding theory and cryptography. It will be most suited for senior undergraduates and beginning graduate students in mathematics and
<P>Implicit objects have gained increasing importance in geometric modeling, visualisation, animation, and computer graphics, because their geometric properties provide a good alternative to traditional parametric objects. This book presents the mathematics, computational methods and data structures