Computer science unit 2

Description

Includes : Searchs and sorts Programming techniques (sequence, iteration, selection, arrays/lists + subroutines) Translators/compilers (1st generation, 2nd generation ...)
tabassum88 abedi
Mind Map by tabassum88 abedi, updated more than 1 year ago More Less
Somto Ibeme
Created by Somto Ibeme over 6 years ago
tabassum88 abedi
Copied by tabassum88 abedi almost 5 years ago
3
0

Resource summary

Computer science unit 2
  1. ALGORITHMS
    1. Searchs
      1. Linear
        1. searches each item in list, compare w/ target until it matches/finished searching list
          1. does not need to be sorted, simple to understand
            1. inefficient on long lists, takes too long
            2. Binary
              1. needs to be sorted
                1. efficient on large lists
                  1. very fast
                    1. cancels half of list by finding midpoint
                  2. finds midpoint of list
                    1. compares with search target
                      1. if search target > midpoint - looks at upper bound
                        1. continues until found
                        2. if search target < midpoint - looks at lower bound
                  3. Sorts
                    1. Merge
                      1. halves list into two until single elements then merges back together in order
                        1. efficient on large lists
                          1. fastest out of all sorts
                            1. too complicated for smaller lists
                            2. Insertion
                              1. go through data one by one + check if current data is bigger/smaller than the number that was before it
                                1. slow + inefficient on large lists
                                  1. good for small lists, simple + accurate
                                    1. pass through the array once
                                  2. Bubble
                                    1. repeatedly swapping adjacent item if they are in wrong order, until they are in the correct order.
                                      1. not as efficient, takes many passes
                                        1. simple to understand + implement
                                      2. PROGRAMMING TECHNIQUES
                                        1. Sequence
                                          1. executed in the order they are written:
                                            1. total = mark1 + mark2 average = total / 2 print (total, average)
                                            2. Selection
                                              1. next statement to be executed depends on whether the condition being tested is true or false
                                                1. if statement
                                                  1. if average >= 80 then print ("Distinction") else print ("Pass") endif
                                              2. Iteration
                                                1. repetition
                                                  1. for... next
                                                    1. execute the loop a specified number of times - for counter = 1 TO 7
                                                    2. while... endwhile
                                                      1. execute the loop while a certain condition is true, tested at beginning
                                                        1. while emailAddress does not contain “@”
                                                      2. do... until
                                                        1. execute loop until certain condition is true, tested at the end of loop
                                                          1. do ... until emailAddress contains “@”
                                                            1. not in python, used for pseudocode
                                                  2. TRANSLATORS/COMPILERS
                                                    1. 1st generation
                                                      1. machine code
                                                        1. Directly Executable by the processor, computer understands
                                                          1. hard to debug, hard to understand, difficult to program in
                                                            1. 0001 - input 1100 - store 0010 - output
                                                            2. no translator needed
                                                            3. 2nd generation
                                                              1. assembly code uses mnemonics
                                                                1. easier to program in compared with 1st generation but still difficult
                                                                  1. slower than 1st generation- needs to be translated
                                                                  2. One Assembly Language instruction translates to one Machine Code Instruction (1-1 relationship)
                                                                    1. uses assembler to translate
                                                                      1. used to program Device Drivers
                                                                        1. control the operation of a Hardware Device, GCD
                                                                      2. 3rd generation
                                                                        1. uses compiler to translate: translates in 1 go + displays error message afterwards
                                                                          1. harder to debug, hardware specific - suited to certain computer
                                                                          2. uses interpreter to translate: translates as program running (line by line) + if error found interpreting stopped; if not continue
                                                                            1. longer to run, slower
                                                                            2. easier to understand (uses English like key words) easier to debug
                                                                              1. One instruction translates into many machine code instructions
                                                                          3. ARRAYS/LISTS
                                                                            1. data structure that is fixed in size, capable of storing data, accessed by an index
                                                                              1. use 0 based counting (starts at zero)
                                                                              2. sorce = [ ]
                                                                                1. declaration
                                                                                  1. memory set aside for contents, giving name to memory space
                                                                                    1. x
                                                                                2. score[0] = 3
                                                                                  1. 3 is value to be stored at index
                                                                                    1. assingment
                                                                                      1. putting data into memory location
                                                                                        1. x = 6
                                                                                    2. 0 is position in list
                                                                                    3. score = [1,2,3,4,5]
                                                                                      1. scores[0] = 4
                                                                                        1. score = [4,2,3,4,5]
                                                                                          1. changed value stored at position 0
                                                                                      2. SUBROUTINES
                                                                                        1. code broken up into manageable segments
                                                                                          1. set of program instructions that do specific task
                                                                                          2. call
                                                                                            1. execute subroutine
                                                                                              1. Menu ()
                                                                                              2. instruction that starts subroutine
                                                                                              3. parameters
                                                                                                1. info about data being passed to a function in brackets
                                                                                                  1. def FirstTask (textToDisplay, num) :
                                                                                                    1. num + textToDisplay = paramters
                                                                                                  2. arguments
                                                                                                    1. value passed to parameter
                                                                                                      1. meal = input("Enter meal") price(meal)
                                                                                                        1. sending response to subroutine
                                                                                                  3. function
                                                                                                    1. section of code, performs specific task, returns value
                                                                                                      1. algorithm to calculate VAT
                                                                                                    2. procedure
                                                                                                      1. does not return value
                                                                                                        1. algorithm for making a square
                                                                                                      Show full summary Hide full summary

                                                                                                      Similar

                                                                                                      OCR GCSE History-Paper Two: The Liberal Reforms 1906-14 Poverty to Welfare State NEW FOR 2015!!!
                                                                                                      I Turner
                                                                                                      Latin Literature Exam Techniques
                                                                                                      mouldybiscuit
                                                                                                      Geography Quiz - Tectonics
                                                                                                      oscartaylor
                                                                                                      4. Civil War
                                                                                                      ShreyaDas
                                                                                                      How does Virgil build up tension in the death of Nisus?
                                                                                                      mouldybiscuit
                                                                                                      HTTPS explained with Carrier Pigeons
                                                                                                      Shannon Anderson-Rush
                                                                                                      Maths GCSE - What to revise!
                                                                                                      livvy_hurrell
                                                                                                      Computer science unit 2
                                                                                                      tabassum88 abedi
                                                                                                      Computer science unit 2
                                                                                                      джордж гаврилович
                                                                                                      Computer science unit 2
                                                                                                      Brokoli Momkey
                                                                                                      Computing Hardware - CPU and Memory
                                                                                                      ollietablet123