refractor all topics. (#8168)
parent
8033ccbe6d
commit
f7f0270f75
36 changed files with 57 additions and 44 deletions
@ -1 +1,7 @@ |
||||
# Adjacency Matrix |
||||
# Adjacency Matrix |
||||
|
||||
An adjacency matrix is a square matrix used to represent a finite graph. It is used to represent the connections between vertices in a graph. The matrix is filled with 0s and 1s, where a 1 represents a connection between two vertices and a 0 represents no connection. |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@article@Adjacency Matrix](https://en.wikipedia.org/wiki/Adjacency_matrix) |
@ -1,6 +1,9 @@ |
||||
# Concurrency in Multiple Cores |
||||
|
||||
Concurrency or Parallelism is simultaneous execution of processes on a multiple cores per CPU or multiple CPUs (on a single motherboard). Concurrency is when Parallelism is achieved on a single core/CPU by using scheduling algorithms that divides the CPU's time (time-slice). |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@article@What is the difference between multicore and concurrent programming?](https://stackoverflow.com/questions/5372861/what-is-the-difference-between-multicore-and-concurrent-programming) |
||||
- [@article@Difference between Multi-core and concurrent Programming?](https://stackoverflow.com/questions/5372861/what-is-the-difference-between-multicore-and-concurrent-programming) |
||||
- [@article@Concurrency in Multicore systems](https://cs.stackexchange.com/questions/140793/concurrency-in-multiple-core) |
||||
- [@article@Mastering Concurrency](https://www.harrisonclarke.com/blog/mastering-concurrency-a-guide-for-software-engineers) |
@ -1,7 +1,10 @@ |
||||
# CPU Cache |
||||
|
||||
A CPU cache is a hardware cache used by the central processing unit of a computer to reduce the average cost to access data from the main memory. A cache is a smaller, faster memory, located closer to a processor core, which stores copies of the data from frequently used main memory locations. |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@article@What is CPU Cache](https://www.howtogeek.com/854138/what-is-cpu-cache/) |
||||
- [@video@MIT 6.004 L15: The Memory Hierarchy](https://www.youtube.com/watch?v=vjYF_fAZI5E\&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-\&index=24) |
||||
- [@video@MIT 6.004 L16: Cache Issues](https://www.youtube.com/watch?v=ajgC3-pyGlk\&index=25\&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-) |
||||
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh) |
||||
|
@ -1,6 +1,8 @@ |
||||
# DCL (Data Control Language): |
||||
# DCL (Data Control Language) |
||||
|
||||
DCL includes commands such as GRANT and REVOKE which mainly deal with the rights, permissions, and other controls of the database system. |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@article@DCL](https://en.wikipedia.org/wiki/Data_Control_Language) |
||||
- [@article@DCL Commands](https://www.geeksforgeeks.org/sql-ddl-dql-dml-dcl-tcl-commands/) |
@ -1,9 +1,10 @@ |
||||
# Finding Hamiltonian Paths |
||||
|
||||
Hamiltonian paths are paths that visit every node in a graph exactly once. They are named after the famous mathematician [Hamilton](https://en.wikipedia.org/wiki/William_Rowan_Hamilton). Hamiltonian paths are a special case of [Hamiltonian cycles](https://en.wikipedia.org/wiki/Hamiltonian_cycle), which are cycles that visit every node in a graph exactly once. |
||||
Hamiltonian paths are paths that visit every node in a graph exactly once. They are named after the famous mathematician Hamilton. Hamiltonian paths are a special case of Hamiltonian cycles, which are cycles that visit every node in a graph exactly once. |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@article@Hamiltonian Cycles](https://en.wikipedia.org/wiki/Hamiltonian_cycle) |
||||
- [@article@Hamiltonian Path](https://www.hackerearth.com/practice/algorithms/graphs/hamiltonian-path/tutorial/) |
||||
- [@article@Hamiltonian Paths and Cycles](https://medium.com/stamatics-iit-kanpur/hamiltonian-paths-and-cycles-4f233bfbc53a) |
||||
- [@article@Hamiltonian Paths - Lecture 7](https://people.csail.mit.edu/virgi/6.s078/lecture17.pdf) |
||||
|
@ -1,6 +1,8 @@ |
||||
# How CPU Executes Programs? |
||||
|
||||
The CPU executes programs by repeatedly fetching instructions from memory, decoding them to understand the operation, and then executing those operations. This cycle, called the fetch-decode-execute cycle, continues for each instruction in the program, with the CPU using registers for temporary storage and a program counter to keep track of the next instruction. Modern CPUs use techniques like pipelining and caches to speed up this process, enabling them to execute complex programs efficiently. |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@video@How CPU executes a program](https://www.youtube.com/watch?v=XM4lGflQFvA) |
||||
- [@video@How CPU Executes a Program](https://www.youtube.com/watch?v=XM4lGflQFvA) |
||||
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh) |
||||
|
@ -1,5 +1,8 @@ |
||||
# Instructions and Programs |
||||
|
||||
Instructions are the most basic commands a CPU can understand, directing it to perform specific actions like adding numbers or moving data. A program, on the other hand, is a collection of these instructions, organized in a sequence to accomplish a particular task. Think of instructions as individual words and a program as a complete sentence or story; the CPU executes these instructions one by one, following the program's logic, to achieve the desired outcome. |
||||
|
||||
Visit the following resources to learn more: |
||||
|
||||
- [@video@Instructions and Programs](https://youtu.be/zltgXvg6r3k) |
||||
- [@article@Instruction and Programs](https://nerdfighteria.info/v/zltgXvg6r3k/) |
||||
- [@video@Instructions and Programs](https://youtu.be/zltgXvg6r3k) |
Loading…
Reference in new issue