Please enable JavaScript.
Coggle requires JavaScript to display documents.
System Arcitecture - Coggle Diagram
System Arcitecture
Flow charts
-
Inputs/Outputs - anything that's put into or taken out of the algorithm goes in a parallelogram box.
Processes - general instructions, processes and calculations go in rectangular boxes
Decision- Decisions, often a "yes" or "no" question, are put in diamond boxes
-
Arrows- Arrows connect boxes and show the direction you should follow. some boxes might have multiple arrows coming in or going out of them
Sorting Algorithms
-
if they're in the right order, you don't have to do anything. if they're in the wrong order, swap them.
-
Repeat step 3) until you get to the end of the list- this is called one pass. the last item will now be in the correct place, so don't include it in the next pass.
-
Search Algorithms
-
if this is the item you're looking for, then stop the search - you've found it.
if not, compare the item you're looking for to the middle item.
if it comes before the middle item, get rid of the second half of the list.
if it comes after the middle item, get rid of the first half of the list
you'll be left with a list that is half the size of the original list.
repeat first and third step on this smaller list to get an even smaller one. keep going until you find the item you're looking for
Computational Thinking
decomposition- breaking a complex problem down into smaller problems and solving each one individually
algorithmic thinking- a logical way of getting from the problem to the solution. if the steps you take to solve a problem follow an algorithm then they can be reused and adapted to solve similar problems in the future
Abstraction- picking out the important bits of information from the problem, ignoring the specific details that don't matter
Pseudo-code
it is not an actual programming language but it should follow a similar structure and read like one (roughly). The idea is that pseudo-code clearly shows an algorithms steps without worrying about the finer details (syntax) of any particular programming language.
-
there are different ways to write pseudo-code- they are all equally correct as long as the person reading the code can follow it and understand what you mean