VARIABLE NAMES: can contain numbers, letters and underscores (_). MUST start with a letter or underscore cannot contain any of these: $, %, ^, &, -, +, ,, ;, #, !, ~, plus pretty much any other special character SORTING/SEARCHING: Sorting algorithms: 1) merge sort 2) insertion sort 3) selection sort Searching: 1) basic/linear (this is the one where we went through the list from beginning to end and stopped if/when we found the thing we're looking for) 2) binary search (the one where we kept cutting the list in half until there was nothing left or we found the thing we're looking for) binary search (log2(n)) < basic search (n) < merge sort (n*log2(n) < insertion/selection sort (n**2) STRING STUFF: Unicode - how many characters can it have? 2**32 Planes: Basic Multilingual Plane contains MOST of the characters we use today * it's size is 2**16 (65536) What languages are possible? All of them! Some valid Unicode encodings: UTF8 UTF16 UTF32/UCS4 NOT Unicode encodings: ASCII (is a subset of UTF8)