From charlesreid1

Line 9: Line 9:
=Topics=
=Topics=


==Computer Science==
==computer science topics==


Link: https://charlesreid1.com:3000/cs/study-plan/src/master/TODOSoftwareEngineering.md
List of topics, with links to notes on this wiki and code in git repos: https://charlesreid1.com:3000/cs/study-plan/src/master/TODOSoftwareEngineering.md
 
[[CS]] list of topics:
 
Data Structures
 
Algorithms
 
Mathematics - Combinatorics and Probability
 
Mathematics - Number Theory
 
Mathematics - Numerics


Languages
List of topics:
* Data Structures
* Algorithms
* Mathematics
** Combinatorics
** Probability
** Number Theory
** Numerics
* Languages and APIs


===Data Structures===
===Data Structures===
Line 44: Line 40:
* [[Maps]]
* [[Maps]]
* [[Binary Trees]]
* [[Binary Trees]]
* [[Abstract Data Types]] - general classes of data structures
* [[Graphs]]
* [[Abstract Data Types]] - ADTs for general design of data structure classes


===Algorithms===
===Algorithms===

Revision as of 13:22, 10 September 2017

computer science: the science of problem-solving with computers, computational devices, and computational methods.

Study Notes

We put together a repository with a detailed outline of topics in computer science as part of a CS study plan. We updated it with notes and code (links to this wiki, and to git repos).

That repository can be found here: https://charlesreid1.com:3000/cs/study-plan

Topics

computer science topics

List of topics, with links to notes on this wiki and code in git repos: https://charlesreid1.com:3000/cs/study-plan/src/master/TODOSoftwareEngineering.md

List of topics:

  • Data Structures
  • Algorithms
  • Mathematics
    • Combinatorics
    • Probability
    • Number Theory
    • Numerics
  • Languages and APIs

Data Structures

Main Data Structures Page: Data Structures (see also: Template:DataStructuresFlag)

Polished summaries of information: Study Guides

Link: https://charlesreid1.com:3000/cs/study-plan/src/master/TODOSoftwareEngineering.md

Topics:

Algorithms

Algorithms

Algorithms can be divided into categories:


Programming practice and writeups:

Combinatorics and Probability

Analytic Combinatorics textbook - link here: http://algo.inria.fr/flajolet/Publications/book.pdf

Outline of combinatorics content:

  • Combinatorial structures - use ordinary generating functions
  • Labelled structures - use exponential generating functions
  • Combinatorial parameters - use multivariate generating functions

Basic Combinatorics:

  • Algorithms/Combinatorics
    • Binomial coefficients
    • Multinomial coefficeints
    • Multisets
    • Art of Computer Programming coverage of combinatorics

Generating Functions:


Graph Theory

Graphs

Notes on graph theory:

Notes on data structures for graphs:

Number Theory

Languages and Tools:

  • Java for number theory
  • Pari GP
  • Mathematica

Numerics

Link: https://charlesreid1.com:3000/cs/study-plan/src/master/TODONumerics.md

Numerics topics corresponding to particular chapters:

  • Linear solvers - linear algebra
  • Nonlinear solvers -root-finding
  • Interpolation and extrapolation
  • Integration and function evaluation

Languages and Tools

Languages:

  • Java
  • Python
  • Go (minimal)
  • C++ (minimal)
  • Scala (minimal)

Tool categories:

  • Built-in data structures (solid)
  • Extended data structures libraries (Pandas, Guava) and utility libraries (itertools, Apache Commons)
  • Numerical libraries (big numbers, factoring, exponents, root finding, linear solvers, nonlinear solvers)
  • Graph library

Infrastructure:

  • Testing infrastructure & best practices (JUnit)
  • Build tools (Bezel, Maven)

Study Resources

Math:

Some nice awesome lists:

Meta:

Programming tests:

Growth hacking:

Flags

Computer Science





See also:

Data Structures
































Algorithms







CS/OldPage