Answers.Body: <p>Many areas of discrete mathematics are intimately connected with computer science.  For example:</p>
  <p>Most data structures involve pointers (or references), whether simple linked lists and trees, heaps, hash tries, or compressed suffix arrays; these naturally form a directed graph, and so some familiarity with basic graph theory is very relevant to understanding the characteristics of these data structures and how to manipulate them.</p>
  <p>And in addition to correctness, two of the most important aspects of any algorithm are the amounts of time and memory that it needs; and that can often include ideas from combinatorics.</p>
  <p>Boolean algebra and related areas of logic are used in all levels of computing, from high-level algorithms right down to the physical logic gates that make up ICs.</p>
  <p>Whenever data is stored or transmitted, there are the twin goals of efficiency (packing the most amount of data into the least amount of time or space) and robustness (being able to cope if some parts of the data get lost along the way); information theory is fundamental to understanding and achieving both of those goals.</p>
  <p>Cryptography is a hugely important area in computer security, and is a direct application of some deep areas of number theory.</p>
  <p>Transforms such as the discrete Fourier transform are ubiquitous for storing and processing images, audio, and video.</p>
  <p>And many more…</p>
  <p>Not to mention the more indirect benefits that come from familiarity with the ideas and techniques of discrete mathematics.  After all, everything about computers is by its very nature discrete!</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-11-26T00:22:41.697Z
Answers.LastActivityDate: 2024-11-26T00:22:41.697Z
Answers.UserDisplayName: gidds
Answers.Body: <p>Theoretical CS often depends on the concepts of discrete math, such as sophisticated counting. Even the course in algorithms, taken as an undergraduate, heavily depends on proving the efficiency of those processes.</p>
  <p>In addition, some intractable problems are highly mathematical, and in the discrete, rather than the continuous, sense.</p>
  <p>Do well in those courses and it will ease many other things in your CS study.</p>
  <p>CS has many aspects, both applied and theoretical.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-11-25T11:09:20.810Z
Answers.LastActivityDate: 2024-11-25T11:09:20.810Z
Answers.UserDisplayName: Buffy
Body: <p>College sophmore here looking to change their CS minor to a major. My college requires two semesters of discrete math for the major. What makes discrete math so useful to Computer Science?</p>
  <p>My sincerest of apologies for any ignorance on my end! Thank you so much for any help.</p>
  
Tags: <discrete-math>
Title: Why is discrete math required in Computer Science?
ThreadText: # Why is discrete math required in Computer Science?
  
  (Asked by: username_0 on 2024-11-25)
  
  College sophmore here looking to change their CS minor to a major. My college requires two semesters of discrete math for the major. What makes discrete math so useful to Computer Science?
  
  My sincerest of apologies for any ignorance on my end! Thank you so much for any help.
  
  **Tags:** discrete-math
  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2024-11-26. Score: 9
  
  Many areas of discrete mathematics are intimately connected with computer science.  For example:
  
  Most data structures involve pointers (or references), whether simple linked lists and trees, heaps, hash tries, or compressed suffix arrays; these naturally form a directed graph, and so some familiarity with basic graph theory is very relevant to understanding the characteristics of these data structures and how to manipulate them.
  
  And in addition to correctness, two of the most important aspects of any algorithm are the amounts of time and memory that it needs; and that can often include ideas from combinatorics.
  
  Boolean algebra and related areas of logic are used in all levels of computing, from high-level algorithms right down to the physical logic gates that make up ICs.
  
  Whenever data is stored or transmitted, there are the twin goals of efficiency (packing the most amount of data into the least amount of time or space) and robustness (being able to cope if some parts of the data get lost along the way); information theory is fundamental to understanding and achieving both of those goals.
  
  Cryptography is a hugely important area in computer security, and is a direct application of some deep areas of number theory.
  
  Transforms such as the discrete Fourier transform are ubiquitous for storing and processing images, audio, and video.
  
  And many more…
  
  Not to mention the more indirect benefits that come from familiarity with the ideas and techniques of discrete mathematics.  After all, everything about computers is by its very nature discrete!
  
  
  ---
  
  ### Answer by username_2 on 2024-11-25. Score: 2
  
  Theoretical CS often depends on the concepts of discrete math, such as sophisticated counting. Even the course in algorithms, taken as an undergraduate, heavily depends on proving the efficiency of those processes.
  
  In addition, some intractable problems are highly mathematical, and in the discrete, rather than the continuous, sense.
  
  Do well in those courses and it will ease many other things in your CS study.
  
  CS has many aspects, both applied and theoretical.
  
  
  ---
  
  