diff --git a/README.md b/README.md index 9b059a2..17a7099 100644 --- a/README.md +++ b/README.md @@ -84,124 +84,124 @@ For a complete CS self-taught program, the resources for my study plan have been ### The Study Plan -x [What is it?](#what-is-it) -x [Why use it?](#why-use-it) -x [How to use it](#how-to-use-it) -x [Don't feel you aren't smart enough](#dont-feel-you-arent-smart-enough) -x [A Note About Video Resources](#a-note-about-video-resources) -x [Choose a Programming Language](#choose-a-programming-language) -x [Books for Data Structures and Algorithms](#books-for-data-structures-and-algorithms) -x [Interview Prep Books](#interview-prep-books) -x [Don't Make My Mistakes](#dont-make-my-mistakes) -x [What you Won't See Covered](#what-you-wont-see-covered) -x [The Daily Plan](#the-daily-plan) -x [Coding Question Practice](#coding-question-practice) -x [Coding Problems](#coding-problems) +- [What is it?](#what-is-it) +- [Why use it?](#why-use-it) +- [How to use it](#how-to-use-it) +- [Don't feel you aren't smart enough](#dont-feel-you-arent-smart-enough) +- [A Note About Video Resources](#a-note-about-video-resources) +- [Choose a Programming Language](#choose-a-programming-language) +- [Books for Data Structures and Algorithms](#books-for-data-structures-and-algorithms) +- [Interview Prep Books](#interview-prep-books) +- [Don't Make My Mistakes](#dont-make-my-mistakes) +- [What you Won't See Covered](#what-you-wont-see-covered) +- [The Daily Plan](#the-daily-plan) +- [Coding Question Practice](#coding-question-practice) +- [Coding Problems](#coding-problems) ### Topics of Study -x [Algorithmic complexity / Big-O / Asymptotic analysis](#algorithmic-complexity--big-o--asymptotic-analysis) -x [Data Structures](#data-structures) - x [Arrays](#arrays) - x [Linked Lists](#linked-lists) - x [Stack](#stack) - x [Queue](#queue) - x [Hash table](#hash-table) -x [More Knowledge](#more-knowledge) - x [Binary search](#binary-search) - x [Bitwise operations](#bitwise-operations) -x [Trees](#trees) - x [Trees - Intro](#trees---intro) - x [Binary search trees: BSTs](#binary-search-trees-bsts) - x [Heap / Priority Queue / Binary Heap](#heap--priority-queue--binary-heap) - x balanced search trees (general concept, not details) - x traversals: preorder, inorder, postorder, BFS, DFS -x [Sorting](#sorting) - x selection - x insertion - x heapsort - x quicksort - x mergesort -x [Graphs](#graphs) - x directed - x undirected - x adjacency matrix - x adjacency list - x traversals: BFS, DFS -x [Even More Knowledge](#even-more-knowledge) - x [Recursion](#recursion) - x [Dynamic Programming](#dynamic-programming) - x [Design Patterns](#design-patterns) - x [Combinatorics (n choose k) & Probability](#combinatorics-n-choose-k--probability) - x [NP, NP-Complete and Approximation Algorithms](#np-np-complete-and-approximation-algorithms) - x [How computers process a program](#how-computers-process-a-program) - x [Caches](#caches) - x [Processes and Threads](#processes-and-threads) - x [Testing](#testing) - x [String searching & manipulations](#string-searching--manipulations) - x [Tries](#tries) - x [Floating Point Numbers](#floating-point-numbers) - x [Unicode](#unicode) - x [Endianness](#endianness) - x [Networking](#networking) -x [Final Review](#final-review) +- [Algorithmic complexity / Big-O / Asymptotic analysis](#algorithmic-complexity--big-o--asymptotic-analysis) +- [Data Structures](#data-structures) + - [Arrays](#arrays) + - [Linked Lists](#linked-lists) + - [Stack](#stack) + - [Queue](#queue) + - [Hash table](#hash-table) +- [More Knowledge](#more-knowledge) + - [Binary search](#binary-search) + - [Bitwise operations](#bitwise-operations) +- [Trees](#trees) + - [Trees - Intro](#trees---intro) + - [Binary search trees: BSTs](#binary-search-trees-bsts) + - [Heap / Priority Queue / Binary Heap](#heap--priority-queue--binary-heap) + - balanced search trees (general concept, not details) + - traversals: preorder, inorder, postorder, BFS, DFS +- [Sorting](#sorting) + - selection + - insertion + - heapsort + - quicksort + - mergesort +- [Graphs](#graphs) + - directed + - undirected + - adjacency matrix + - adjacency list + - traversals: BFS, DFS +- [Even More Knowledge](#even-more-knowledge) + - [Recursion](#recursion) + - [Dynamic Programming](#dynamic-programming) + - [Design Patterns](#design-patterns) + - [Combinatorics (n choose k) & Probability](#combinatorics-n-choose-k--probability) + - [NP, NP-Complete and Approximation Algorithms](#np-np-complete-and-approximation-algorithms) + - [How computers process a program](#how-computers-process-a-program) + - [Caches](#caches) + - [Processes and Threads](#processes-and-threads) + - [Testing](#testing) + - [String searching & manipulations](#string-searching--manipulations) + - [Tries](#tries) + - [Floating Point Numbers](#floating-point-numbers) + - [Unicode](#unicode) + - [Endianness](#endianness) + - [Networking](#networking) +- [Final Review](#final-review) ### Getting the Job -x [Update Your Resume](#update-your-resume) -x [Find a Job](#find-a-job) -x [Interview Process & General Interview Prep](#interview-process--general-interview-prep) -x [Be thinking of for when the interview comes](#be-thinking-of-for-when-the-interview-comes) -x [Have questions for the interviewer](#have-questions-for-the-interviewer) -x [Once You've Got The Job](#once-youve-got-the-job) +- [Update Your Resume](#update-your-resume) +- [Find a Job](#find-a-job) +- [Interview Process & General Interview Prep](#interview-process--general-interview-prep) +- [Be thinking of for when the interview comes](#be-thinking-of-for-when-the-interview-comes) +- [Have questions for the interviewer](#have-questions-for-the-interviewer) +- [Once You've Got The Job](#once-youve-got-the-job) **---------------- Everything below this point is optional ----------------** ### Optional Extra Topics & Resources -x [Additional Books](#additional-books) -x [System Design, Scalability, Data Handling](#system-design-scalability-data-handling) (if you have 4+ years experience) -x [Additional Learning](#additional-learning) - x [Compilers](#compilers) - x [Emacs and vi(m)](#emacs-and-vim) - x [Unix command line tools](#unix-command-line-tools) - x [Information theory](#information-theory-videos) - x [Parity & Hamming Code](#parity--hamming-code-videos) - x [Entropy](#entropy) - x [Cryptography](#cryptography) - x [Compression](#compression) - x [Computer Security](#computer-security) - x [Garbage collection](#garbage-collection) - x [Parallel Programming](#parallel-programming) - x [Messaging, Serialization, and Queueing Systems](#messaging-serialization-and-queueing-systems) - x [A*](#a) - x [Fast Fourier Transform](#fast-fourier-transform) - x [Bloom Filter](#bloom-filter) - x [HyperLogLog](#hyperloglog) - x [Locality-Sensitive Hashing](#locality-sensitive-hashing) - x [van Emde Boas Trees](#van-emde-boas-trees) - x [Augmented Data Structures](#augmented-data-structures) - x [Balanced search trees](#balanced-search-trees) - x AVL trees - x Splay trees - x Red/black trees - x 2-3 search trees - x 2-3-4 Trees (aka 2-4 trees) - x N-ary (K-ary, M-ary) trees - x B-Trees - x [k-D Trees](#k-d-trees) - x [Skip lists](#skip-lists) - x [Network Flows](#network-flows) - x [Disjoint Sets & Union Find](#disjoint-sets--union-find) - x [Math for Fast Processing](#math-for-fast-processing) - x [Treap](#treap) - x [Linear Programming](#linear-programming-videos) - x [Geometry, Convex hull](#geometry-convex-hull-videos) - x [Discrete math](#discrete-math) -x [Additional Detail on Some Subjects](#additional-detail-on-some-subjects) -x [Video Series](#video-series) -x [Computer Science Courses](#computer-science-courses) -x [Papers](#papers) +- [Additional Books](#additional-books) +- [System Design, Scalability, Data Handling](#system-design-scalability-data-handling) (if you have 4+ years experience) +- [Additional Learning](#additional-learning) + - [Compilers](#compilers) + - [Emacs and vi(m)](#emacs-and-vim) + - [Unix command line tools](#unix-command-line-tools) + - [Information theory](#information-theory-videos) + - [Parity & Hamming Code](#parity--hamming-code-videos) + - [Entropy](#entropy) + - [Cryptography](#cryptography) + - [Compression](#compression) + - [Computer Security](#computer-security) + - [Garbage collection](#garbage-collection) + - [Parallel Programming](#parallel-programming) + - [Messaging, Serialization, and Queueing Systems](#messaging-serialization-and-queueing-systems) + - [A*](#a) + - [Fast Fourier Transform](#fast-fourier-transform) + - [Bloom Filter](#bloom-filter) + - [HyperLogLog](#hyperloglog) + - [Locality-Sensitive Hashing](#locality-sensitive-hashing) + - [van Emde Boas Trees](#van-emde-boas-trees) + - [Augmented Data Structures](#augmented-data-structures) + - [Balanced search trees](#balanced-search-trees) + - AVL trees + - Splay trees + - Red/black trees + - 2-3 search trees + - 2-3-4 Trees (aka 2-4 trees) + - N-ary (K-ary, M-ary) trees + - B-Trees + - [k-D Trees](#k-d-trees) + - [Skip lists](#skip-lists) + - [Network Flows](#network-flows) + - [Disjoint Sets & Union Find](#disjoint-sets--union-find) + - [Math for Fast Processing](#math-for-fast-processing) + - [Treap](#treap) + - [Linear Programming](#linear-programming-videos) + - [Geometry, Convex hull](#geometry-convex-hull-videos) + - [Discrete math](#discrete-math) +- [Additional Detail on Some Subjects](#additional-detail-on-some-subjects) +- [Video Series](#video-series) +- [Computer Science Courses](#computer-science-courses) +- [Papers](#papers) ---