From cb1e1ea83a4462e6804e30e825a8b5b1aae65f03 Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Wed, 13 Jan 2016 23:57:39 -0500 Subject: [PATCH 01/13] As much as I could get out for now --- .../Contents.swift | 13 ++ .../Contents.swift | 119 ++++++++++++++++++ 2 files changed, 132 insertions(+) diff --git a/HWfrom1-09-16(SwiftIntro).playground/Contents.swift b/HWfrom1-09-16(SwiftIntro).playground/Contents.swift index 488e9ed..d32e855 100644 --- a/HWfrom1-09-16(SwiftIntro).playground/Contents.swift +++ b/HWfrom1-09-16(SwiftIntro).playground/Contents.swift @@ -8,6 +8,19 @@ var str = "Hello, playground" Use the link here to get the questions. Then code your solutions below. If it does not require code, just write your answer in comments. +The following are exercises taken from in class slides. Code each of the solutions, then create a google doc that links to a gist for each solution. + +Given an integer N, there is a list of size N-1 that is missing one number from 1 - N(inclusive). Find that number. + +Given a list of size N containing numbers 1 - N (inclusive). return true if there are duplicates, false if not + +Given two lists, find the smallest value that exists in both lists. +L1 = [1,2,5,9] +L2 = [9, 20 , 5] + +Check to see if an integer is a palindrome don’t use casting + + https://docs.google.com/document/d/1DQ2aCJ_yUZtazzCfb0PaS81bg61V2ZOSxpABh981xSo/edit diff --git a/HWfrom1-10-016(BigO).playground/Contents.swift b/HWfrom1-10-016(BigO).playground/Contents.swift index 2040d38..2b692df 100644 --- a/HWfrom1-10-016(BigO).playground/Contents.swift +++ b/HWfrom1-10-016(BigO).playground/Contents.swift @@ -5,6 +5,125 @@ import UIKit var str = "Hello, playground" /* +Big O Homework +1) With my new top of the line XJ452 supercomputer, memory access takes 1 picosecond, math operations take 3 picoseconds, and storing data in memory takes 10 picoseconds. My friend wrote a filter that makes a pixel more awesome, and takes 200 picoseconds to run. + + How long would my computer take to execute the following code if the input image is 1000px wide by 2000px tall? + Picoseonds = 1+3+10+200 (214) + Pixels = 1000 * 2000 (2,000,000) + Answer: TotalTime = (1000 * 2000) *(1+3+10+200) = 428,000,000 + + What if it’s n by m? + Answer: TotalTime = (n * m) *(1+3+10+200) + +Pixel **awesomeFilter(Pixel image[][], int width, int height) { + for (int i = 0; i < width; i++) { + for (int j = 0; j < height; j++) { + [image[i][j] makeMoreAwesome]; + } + } + return image; +} + + +What is the time complexity of this method, expressed in big O notation? Assume the image is square, and both dimensions are ‘n’. + Answer: O(n^2) + +My friend sends me an improved version of his algorithm, makeEvenMoreAwesome, that takes into account the pixels around the image. He says it’s O(n2) in the amount of pixels in the image. What is the new time complexity of the method? + Answer: O(n^4) + + + + +If foo(xs) is a function with time complexity n (where n is the size of the input array), and bar(xs) is a function with time complexity n2, what is the time complexity of each of the following snippets of code or algorithms? + + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + foo(xs); + } + } + Answer: (n) + (n) + (n) = O(n^3) + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + bar(xs); + } + } + Answer:(n) + (n) + (n^2) = O(n^4) + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + // do cool stuff + } + } + Answer: (n) + (n) = O(n^2) + + + + + +int frobnicate(ys, m) { + if (m == 0) { + return 0; + } + return ys[m] + frobnicate(ys, m - 1); + } + frobnicate(xs, n); + Answer: O(n) + +Tip: Write down a table with n from 0 to 5 and trace through to find out how many times frobnicate is called with each value of n. + + +An algorithm that takes as its input a list of friends of length n, filters out duplicates using a method similar to our hasDuplicates method, sorts the list using merge sort (see bigocheatsheet.com), then prints each item to the screen. + + +An algorithm that searches the now-sorted list of friends for a specific friend (not including the time it takes to sort). + + + + + + +Look at the complexities for some common data structures at bigocheatsheet.com. Pick a good data structure for each of the following scenarios (there are sometimes multiple answers): + + +You get a large dataset of points of interest from an API when your app first runs. You build it once at the beginning, and then have to search it many times while the user pans around a map. + Answer: Hash Table + +You get a small dataset of points of interest from an API every time the user pans the map. You construct the data set many times and only render it once, then you discard it and do another API search. + Answer: Hash Table + +Tip: Constructing a dataset of size n means you have to call the data structure’s insert method n times. So if the data structure has an insert method that takes O(n2), the time to build it all from scratch is O(n3). + + +You used a linked list for your music app’s playlist feature, but now when people search their playlist, there’s a noticeable lag before loading results. Your competitor’s app is buttery smooth when searching, even showing results as you type. What data structure would allow you to more quickly search without compromising too much on the speed of inserting and deleting tracks, even in the worst case? + + Answer: Hash Table + + + + + + +Write an algorithm using one of the methods from exercise 1 (your choice) to calculate the factorial of a number n. What is the time complexity of your method in terms of the input value? + + +Write an Objective C or Swift function to multiply two numbers without using the * operator. Use the grade school method of multiplying by doing repeated addition. For instance, 5 * 8 = 5 + 5 + 5 + 5 + 5 + 5 + 5 + 5 = 40. Find the big O of your function in terms of n and m (the two operands). + +int n; +int m = 0; +for (int i = 0, i < n, i++) { + m = m + i; +} + + +Look up Russian Peasant Multiplication. It’s a faster way to multiply numbers, especially on a binary computer (like yours!). Implement a new multiplication function using this technique and find the big O of your method. If you have trouble with implementing this, write a flow chart and find the big O based on that. (But it’s more satisfying to implement it and run it) + +Tip: Run through the method by hand a few times to see how it works and verify to yourself that it does. It’s a non-intuitive algorithm. This will hopefully also make the time complexity more clear. + + +Using the technique from exercise 4, profile the built in sorting method in objective C (use an NSMutableArray and google how to sort an array of numbers in objective C). Graph the result. Use spreadsheet formulas to add graph lines for n, n2, and n*log(n). (You’ll have to modify the factors to make them fit in the graph window and to be close to the graph of method execution time). Show that the sort method best fits n * log(n). Use the link here to get the questions. Then code your solutions below. If it does not require code, just write your answer in comments. From 9d68d7af9a2fde1a5f4be3d18a8ffbb59e5009fe Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Wed, 20 Jan 2016 19:04:55 -0500 Subject: [PATCH 02/13] HWFrom1-17-16(Lists and Sorts) Playground file --- .../Contents.swift | 5 +++++ .../contents.xcplayground | 4 ++++ .../contents.xcworkspacedata | 7 +++++++ .../UserInterfaceState.xcuserstate | Bin 0 -> 7920 bytes 4 files changed, 16 insertions(+) create mode 100644 HWFrom1-17-16(Lists and Sorts).playground/Contents.swift create mode 100644 HWFrom1-17-16(Lists and Sorts).playground/contents.xcplayground create mode 100644 HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate diff --git a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift new file mode 100644 index 0000000..c9a6742 --- /dev/null +++ b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift @@ -0,0 +1,5 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" diff --git a/HWFrom1-17-16(Lists and Sorts).playground/contents.xcplayground b/HWFrom1-17-16(Lists and Sorts).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWFrom1-17-16(Lists and Sorts).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/contents.xcworkspacedata b/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..53b6124b5064aed6603e3c1695f717792bab49e2 GIT binary patch literal 7920 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 literal 0 HcmV?d00001 From d60c0d104684bc359de01d5665e760d254d568ef Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Thu, 21 Jan 2016 17:45:26 -0500 Subject: [PATCH 03/13] Properly prints out sudoku board in order. --- .../Contents.swift | 48 ++++++++++++++++++ .../UserInterfaceState.xcuserstate | Bin 7920 -> 8130 bytes 2 files changed, 48 insertions(+) diff --git a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift index c9a6742..cc24111 100644 --- a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift +++ b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift @@ -3,3 +3,51 @@ import UIKit var str = "Hello, playground" +/* +Work on your solutions here. +Link: https://docs.google.com/document/d/1XioaEqk6VqUPA-ccQhkqP3eAoDthxYyOM9vSPB7fDkg/edit#heading=h.uopysoy45zmw +1) +2) +3) +*/ + +//i = r +//j = c + + +let sudokuBoard: [[Int]] = [ + [5, 0, 8, 0, 7, 3, 1, 9, 0], + [9, 0, 0, 6, 0, 0, 4, 0, 8], + [0, 0, 0, 9, 0, 8, 0, 3, 5], + [0, 7, 0, 0, 0, 0, 0, 6, 0], + [0, 0, 2, 0, 0, 0, 9, 0, 0], + [0, 1, 0, 0, 0, 0, 0, 8, 0], + [1, 9, 0, 3, 0, 6, 0, 0, 0], + [2, 0, 3, 0, 0, 7, 0, 0, 9], + [0, 8, 7, 1, 9, 0, 3, 0, 4]] + +let possibleOutcomes: [Int] = [1,2,3,4,5,6,7,8,9] + + +for var i = 0; i < sudokuBoard.count; i++ { + var line = "" + for var j = 0; j < sudokuBoard[i].count; j++ { + line += String(sudokuBoard[i][j]) + line += " " + + + + } + //print(sudokuBoard [4][4]) + //print(line) + +} +print(sudokuBoard [4][4]) +// print(sudokuBoard) +//print("sudokuBoard equals \(sudokuBoard) at iteration \(i)") + +func getValidNumbers(sudokuBoard:[[Int?]], i:Int, j:Int) -> [Int] { + return [Int]() +} + + diff --git a/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate index 53b6124b5064aed6603e3c1695f717792bab49e2..06ce3f7038f5758e2a1fce87d13dca067376a515 100644 GIT binary patch literal 8130 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 From 8fcd66bc1bc3d9e82b8996fe412a6a3f53fded42 Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Thu, 21 Jan 2016 18:59:01 -0500 Subject: [PATCH 04/13] Wrote out execution plan --- .../Contents.swift | 10 ++++++++-- .../UserInterfaceState.xcuserstate | Bin 8130 -> 8128 bytes 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift index cc24111..ecb2667 100644 --- a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift +++ b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift @@ -7,6 +7,12 @@ var str = "Hello, playground" Work on your solutions here. Link: https://docs.google.com/document/d/1XioaEqk6VqUPA-ccQhkqP3eAoDthxYyOM9vSPB7fDkg/edit#heading=h.uopysoy45zmw 1) +//So this is my plan +// Step 1: Print out the the suduko board as as squar with columns +// Step 2: Make an array *possibleOutcomes +// Step 3: Remove the numbers that appear on the x and y axises off possibleOutcomes as they appear + -The numbers remainin gwould be the possible outcome for that coordiante + 2) 3) */ @@ -39,10 +45,10 @@ for var i = 0; i < sudokuBoard.count; i++ { } //print(sudokuBoard [4][4]) - //print(line) + print(line) } -print(sudokuBoard [4][4]) +//print(sudokuBoard [4][4]) // print(sudokuBoard) //print("sudokuBoard equals \(sudokuBoard) at iteration \(i)") diff --git a/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate index 06ce3f7038f5758e2a1fce87d13dca067376a515..52e1e0aeef3bbd95cefae41ba66f7bf67c9022b6 100644 GIT binary patch delta 1063 zcmYL|T}+l`9Earv!M*qM+#mn@8)~%@@PiRF9ijo*|#?(d}+Opk7=^v?44pZ@r?rmx*G z#OovU@U8#T`^B(j9^ZT3{oWdHleg15;Jt|gP#~IsyvRWq#iM6X5?Y8Bp)9lpZ9p4Q z9@>QVqjGc*wW4!q2o0lAXS_ok=5R+kB~FEN+-Y_$IQ`C;>+eRo$?j&i$lc{uxK(bo zTkF=ljc${B#%*=m-46G(hf;H&r=zK(C=U+^%#MF=q@l!TMXWGb0U=8^ei0ZAfDNjk|OnPfF7Ci}=| zq>KDU{-B12(l8oMC(~#eM-%8Ann-<5(?v9erqX3Joo3J+T0pnc5?W2`Xgxhf8)zf_ zh_=vA=%=)mw$nj+hdsn%SOS~P=CZ{sl`Uh-*$S4$USV69j}@|QtcaDea#q2r*gmB)}X< zg2k`|mO>h=g0-*?)Lof;uhkp$MxCc$*ZI0YZ`CFGo^gyc+E^1}9yDQQl9^&6Or(i2&zdZ=#q2SarrOk+ zL#EN3Fegp3eayz#C+#d7XOnEQU2IeBGMjD-?QXlr?zLq}_JFOlN9{@5Y){$K_G5d- ocG+&*V|#6%y=?pKH})s{d$3<{V6b!l+~Yi+f8G6$|6?%z3p!>hZ~y=R delta 1039 zcmYkyYfP3^8~|_xk$lhloadbXbFS|w-5P=jLvRz{h(JWljLAjhCM1TYWI97vg7O*> zHs^(la+3fx1I8FMU?ycDp%4<1Aya1?7B#e}wbln1LaR^xKL2_mdL!C>yxfbL%6+|( z+*92;3cTjspRIUwiaFBqgIBE#Sn6C8a`gGggWKKym6E?Yw4>STR92e%qMsG4e!SXfZ;_Kqgv?UO};FGm1xY+`Jca)-iK)$Hrl09=2AJ#34dzC3lNoDnHB-%WGsE0vmYCDj?sJc0iB>zbcQ~4(Rpx(g|G-5;0u1R99F;@2!n8lgeZuH zSV({^uoY5ZC*;6h*ax|A2;PCikO%KW37msUsD?UdfQ#@kv_dyrhp*uV^usWWz#SNc zF_^XtE6{qu+F)(8Hd(ROW-H!Gw6l16xnr4dmFhAzc z0$C6XX6slSOJqqbg{84=>?k|I&ahHe&Z<}qt7Ubpo;9*=*3Smn5WCI3W8brJ_7nS= zO|mEKH#W^?*&JWMJ-80^pks&fvI%SxQlug!)L*~f+@_@{h@5(%RL>9GU h9?*k&NDu1~eMgV#AM~XD)8XNG#(~QlmMmF7{sBwLEZ6`5 From 6461a38e3ef56c3c341b52b31a985053c626314f Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Thu, 28 Jan 2016 17:38:20 -0500 Subject: [PATCH 05/13] New file --- .../Contents.swift | 64 ++++++++++++++++-- .../UserInterfaceState.xcuserstate | Bin 8128 -> 8134 bytes 2 files changed, 60 insertions(+), 4 deletions(-) diff --git a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift index ecb2667..b834190 100644 --- a/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift +++ b/HWFrom1-17-16(Lists and Sorts).playground/Contents.swift @@ -2,7 +2,42 @@ import UIKit -var str = "Hello, playground" +//var str = "Hello, playground" +// +//41Array + Lists Homework +// +//Given a partially filled in Sudoku board and a set of coordinates in that board pointing to an empty square, write a function that returns a list containing all numbers that the empty square could be. +// +//Input: sudokuBoard:[[Int?]]. (Each location on the board will be either be an Int from 1-9 or nil(empty cell)) +//row: Int +//col: Int +// +//func getValidNumbers(sudokuBoard:[[Int?]], row:Int, col:Int) -> [Int] { +// return [Int]() +//} +// +//Sample input: ,4,4 +// +//sample output: [1,3,4,5,6,8] +// +// +//rotate a matrix by ninety degrees +//Input: matrix:[[Int]] +//Output: matrix: [[Int]] +// +//Sample Input: [[1,2,3,4], +//[5,6,7,8], +//[9,0,1,2], +//[3,4,5,6]] +// +//Sample Output: [ [3,9,5,1], +//[4,0,6,2], +//[5,1,7,3], +//[6,2,8,4] ] +//Design an optimal algorithm for sorting four elements A, B, C, and D. By optimal, I mean one that sorts using the minimum number of comparisons. Hint: you may want to start by putting the first two items in order and the last two items in order... that takes two comparisons. How many more comparisons do you need to find the minimum element? The maximum? Once you’ve found the min and max, what if any additional comparisons are needed? + + + /* Work on your solutions here. Link: https://docs.google.com/document/d/1XioaEqk6VqUPA-ccQhkqP3eAoDthxYyOM9vSPB7fDkg/edit#heading=h.uopysoy45zmw @@ -11,7 +46,7 @@ Link: https://docs.google.com/document/d/1XioaEqk6VqUPA-ccQhkqP3eAoDthxYyOM9vSPB // Step 1: Print out the the suduko board as as squar with columns // Step 2: Make an array *possibleOutcomes // Step 3: Remove the numbers that appear on the x and y axises off possibleOutcomes as they appear - -The numbers remainin gwould be the possible outcome for that coordiante + -The numbers remainin gwould be the possible outcome for that coordiante 2) 3) @@ -20,7 +55,7 @@ Link: https://docs.google.com/document/d/1XioaEqk6VqUPA-ccQhkqP3eAoDthxYyOM9vSPB //i = r //j = c - +/////////////////////////////////Problem 1 let sudokuBoard: [[Int]] = [ [5, 0, 8, 0, 7, 3, 1, 9, 0], [9, 0, 0, 6, 0, 0, 4, 0, 8], @@ -32,7 +67,7 @@ let sudokuBoard: [[Int]] = [ [2, 0, 3, 0, 0, 7, 0, 0, 9], [0, 8, 7, 1, 9, 0, 3, 0, 4]] -let possibleOutcomes: [Int] = [1,2,3,4,5,6,7,8,9] +let possibleOutcomes: Set = [1,2,3,4,5,6,7,8,9] for var i = 0; i < sudokuBoard.count; i++ { @@ -55,5 +90,26 @@ for var i = 0; i < sudokuBoard.count; i++ { func getValidNumbers(sudokuBoard:[[Int?]], i:Int, j:Int) -> [Int] { return [Int]() } +/////////////////////////////////Problem 2 +let matrix: [[Int]] = +[[1,2,3,4], + [5,6,7,8], + [9,0,1,2], + [3,4,5,6]] + + +func rotateMatrixNinetyDegree(matrix: [[Int]]) -> [[Int]] { + var rotatedMatrix = [[Int]]() + for i in 0..bV{xOUuR_4 zoKs$qK%^Jc2pJ<}!cRj!v zKG&FQ68WM<2q7C0#L!yw3Q9zqQ8LOwd(eJ#02QD^=wnok&ZBO03r(OYG-EBaz~Yv) zwB@mCtjku1b;la9ee4Bxn4M%7+NJg>yT-1yy>`9bWVhPw_6@t+?y-CAhxQbn=f?gx z5=Y@^9D`rN88{d3#_!-Nd=WR`M%;v(aSQIjz4$in#{+l}kK+6I0e*-l@$YyF|3!c- zCV?cFgpgHaJ=s7ul1(I$Y$cf_i)52sq>NOOuSh@nlRT!2X&?=v!8C+M(pVZt<7onQ zzf6;9Dovy5G?Ql0JbIWOrylC1jkJk2(-zuFuhCBWCGDc!w1wxCbLJ2Gb64LY)_!4bDbqlauIdc9NY`=XGa? zljpd1IlG;FXRou*`OrDzeC7-|)7+0Q=fOOLhw?BU&e!oIp32jB2H(cFb2mT1Pje5i z;MKf_*K#kfCuj*1d-Oq7a`#0hayoDyZCT(pRrVpL3sSqXBLTq`qV zuG}H>*OWbB%5Ws?2uPwuk4fG$U!+Ihvg4)T>c~{56}Dptj*c$J{GsBD$5_NxP`K)t7m)M0f*dGuUO zwAOxliT2k4I!Le3D|M(2)8YD6oui9&xjv`8x?W$*{&2{sIxncUvfEhGHX4u>_Bj!glX&(Fe`dNP9 K@h)BJ!~X&MS|+9d delta 1015 zcmYMqYfP499Ds2_WbVD6=RW-JGtALSLG&HrT1cb;B4)nd8yPlN z%1J>aK+TXbhEAACSwJX+gl5Rh*~W@WE3(!407I>{K6HKkT?4Vbv1dv>^IE+o_~Go5 zNbf^SBBPgL2 z0#G2Di#*6d7{#GyP!d{;Qcxb+iguu#s0i&shfy6mhI-ING=V13v@^#c4s*C8ol2+P zIqh^gmz`1PfjircaFgBLZn=BFt#=#TMz`5*bvxWn_k!Ew_PPD;Eq4<8`EW3f!qGSe zFT+paOq`Fm;8$@iK7mi-7Tk*4a69h9{rD0d#6x%(U&lA_O?(UA!N1^1e3uYn$N~~Z z!pUN?lB^=D$r_SG){`ufLvqPxQb7)p&&VM8jr>UsT|h%=7!9XUG?vEG1e!>FPtz2d zM$>5q&7wK9fR@mGw30T`7TQYNXglqoAJK053H_Az&^|g&@39aT&EnY#wvwf?be6%g z*#?%!USWHfkCm~#tejP|I#$mb*fDm3on$TSG&|2OvCHgBc7=_yF?NI9WD{(XO|yGG z_5l1~Hp~GFp%4ZOVG%5a7+40e5Dy8E1gWqN)Q@8m3pK1p)K&G38du+`3H778t^QKeYDV4H z{yISW0`*)Stmo?`I!Z_D7#*wQb%IXR>vXOz)I0P}U8G;v#kxe7>Pr2$af~$DSQBjK znNYLPEHYjbVIs}5CeQ3KRpzK^G|lF?=`d%^S<_`7wbAxTyWGawB%5qgZMw~{S+>j` zv{kmo)_Uy`d(@t?XKj}~XV2S@?FBn%hwQK&u~+RiJ8HkRKiS`d{DK05oSK%95I_76 D!lxpR From 7fedf17ee2110a5bb8c7082354aec87f2356e1fd Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Fri, 19 Feb 2016 16:43:55 -0500 Subject: [PATCH 06/13] InsertionSort --- .../UserInterfaceState.xcuserstate | Bin 8134 -> 7960 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-17-16(Lists and Sorts).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate index adffa0b4f8a8b3f7b4a49f15aa5d7a37b2c1b810..c87eb2e072962912e9f9b3af30047c36c4c62e00 100644 GIT binary patch delta 4605 zcmZuz2Y3|K7Cz^0o0;96nXR)cLI@!VA(YSp0Sp0y0f7h!1PG91lPn<+2qqhfG47!k z6@>)^L`|UxN)eQ1K>-_}C?cXf3*rMGk7ofy1k`soh4Q{P^X=Tb=iXE9DgQn1^;wnt zv|G2Iy}i`i29GW6*DE*{@}U4Gz*Kk`%AgzqFdc$GFbC$t)36klK?v$#9ju29un}H_ zO|T8N!!Fnj`{8YP2M)jo@G+c#Q}8AH48Opya0xEM75ELV!tZbmZouEj(0~G((S{mE zU`vd|IBbjY*af==u^SG-bbJVh;xNp>OdO6QFbhXw0T!Yk$72zeV*o2~8cxSYkZ>M8 ziA(S)dcmhAillTRm!Y}bF{1N|!7x3SB z5&wff;m`OB{)#s+c#{D$G7~d13$rr^(^xZhFKf=CSPW~+;#n7VAG@EWu|aGw8^VUM zESAl3SU#J;irEx4jZJ4W7_nJwHk;2Dvz6=_wu-H0YuNLwmc7U}v2E;4_ST5jQz}YI zJ_8XXFoOjYu#Zg7>@dkca~X@l=uj-1k8wMvd~x>M{&8TyKi}Uae2Tu zCD6aHI8a(vKG-+2v?7qJssmH|XHF=cp6;7gT;$^`V>n^BFMqHv-(M1XO26DOjuRS~ z`j+{9D&(qhA)m8FXq>@e8wa@%Qv*5Fq6YFPg5pAXHg5tHLQyUFVLY{@7;4jGZ!wgB zy%r|IB#NX~wJ;f`P!zSM=+HG|WN>IyN)YOw@_$5CaZ#}p9hEXEANhwbjAgJM}Gq$04Q;7Q!M}O!3r?+SkDo@FXmu4%CD zv`TF{=w^5s>^1NbCDyQ2$Qs>0)uiG z(NO*!#>Fmo9SOo8aJ`y_G=%sj{K?a(F#|IFfjYPee?iiS^i2Nec({%b8n=h%Iw-29 zHVt&+9dxmN-grQ?pxl)9s8A-wH89wrs16z*o86hPcrP}m5tPMq z->gO5gRL<7uH_hvrBO7RFAvaK+=K0~<6X-MoO?_?H))H4n23ELW;1rj9+-qZu^0Bn z`!E^%U<&0>F6EJr@~MCd$xq{{XfyW1`!N+-LmH&v033)9LTj2pkI_q{QZxSUrnl)G zKIgdM;K`QiAMdLu38eb-D~iGpz|rIuBn&An3|%y&*=_Z!MgFqPsU^jMtYZK4P@XY5 z)WzuSr-tFBX*tZ_n1?=^OyyKbkMgLFQiDNUt^*YQk9!>RlL7H)W1*yzw9wJJCRx>S?Wq^T0CZpG^{3N*!Q z7KbUEjdQ4iX50?dd|Y&wvlrvzG>xWH^r*r9@%2ZGN||@99%P#2KaHWgSe7T^3Ytle zQ1s}G;-U$SOjGN5K*c7uXYo017OthL8c5^j$Atv@y|!9h7pB%xum;x?aq1aU#}wRz zFNMjQX;uxsOtUF&_z++5lqONz@l~+b;VZZUchVf1OY`dRHSU?+G@lFJ#1m<#;2Vx_ zLYEqRix%8=%{%xZ#B9U^cn}ZayZ9cyj~~!NT11QKae9KDq$L~iFdo69_z{1P;V1MI zJxyz9J%2aQMsA%!+}0US;~B88$A940_zixG-_cT9Mj={GE7s%pcorh?pLmW|(lb0x zt7tX1=bX5*`}BSP*j4t`n99xxojCUNNJ^}VN(toEyD6&yg+9kic$wGb75oja;_rA3 z|G?{^T~dZvLu+XrJxkRgo4H4aKf?$6i=N{LW5^honGVvJA$wqE`t)iNpct~ox2SvjxF6s9uUn8MP6ipgBSh>XFb1I3g5 z`~sakm1?OjCx&7wJYaf@nM>+n6sQH#a$)3Y|T znUq}Bc^k)*61i8qb?sDDb%M2H?O6xDwIkQkiFM9Z?PaBj|MZ6;aP}SzhR{602uENaB+iZ)4T40_Nv6#R_Rp4I58; zc{20%CCDanTws$}3GJgdZ{Y$fWo363IV)!YdY#_jHGT^Xqf%ylawjmbne5TKc&gZA z^cL-Jy2kHB#i*4027GAMWZfJ#x8bsEA}nAF8*fkMX>0m`KCFkkE}r6qq8eV98yhb! z_5u{ufR)&7+w0i+@Ilwn;TpDqj!<)IV*Y2>;`s*ln~>tpqC`gnbNeMfyKeHVQ<{Q&)g`oa2i{ZM^|ez-nMKT4miAFHp>FVrvB zAJTteFdDpuHikq)4@05hVMD+$%`nqYX{a(RHLNkbV5l+F8P*$i78eTWNZ8%^! zWO&bT!f@X3qv2P>b)(5>F?x+Hj4h3=g2q^5oH5?m-k50YV@x-WFy#@wD-VNiexgn#pTwW@>JVFh!a=m=a8#O=E_}?+b^8qrx%aQ{gk=JK>D*z3_u*5}jhK z7$?Sy?Zu8_C$WpzP3$fviG#&-aj2Lf4i~e;QDU|@R?HFe#7glgu}<6}9u~h5uS<#) zBXyJ#f>LLxmoz|nNE#vKNV$?vnkY?@CQH+#>C#MTwlqhYCoPj!NY6-Xq_xuX(ne{k zv|ZXEy(;aJ4oV+Lhoz&^r_yKA=h7F_1?jRG%m%Z`EShDrYPOr5=2qr-a}V=<=04`W z<_F9J%nzCen{&+{n@^j6F<&xYF$b@jubHo#Z<_zIfQ4D~7O$n5rMV@-5^0IDL|bAl zah7;XdrL=4e@l*~*fQO+#IoA5#qx>eUzVFz(Q3Ckt!}HwdXF{A8f}fW##!U7?X8K{ zbn9qqfpw~NrnS;qWer+qSr=QMur9GaZCz$vZrx!$X1yevWvA>4%9`9-j+Nu&c5(+f zK~9pBbNEVlwXuf$`$3Ra!oaM!ag^@@5`y=HURdfEoq3T%(tmfNar zn{3-{@7hk;&fBir-FA=to}m3+dkcF@dxm|CJ;$DB&$pM_AF-2twtcRBzI~&8yZxB` zg#EJprbBeN91)I4N0cMlQSI2|*zY*x_{wqCDLWm`WM{5(p>u`vIp-$lOU^CMZO%Q; zx10x^N1exa^@?k!>owPI*Iw7h zu1{RYT_;>8U8h`UTtB$Zxqfv0=K9_BhwFy>UU#&+v%9N1(cQy6%$?~T;U4K8?ap`m z-9_$VcbR*wyT*OQeZqa+{kImab=JCR-L;-tZ!KBN(8g$aTE14Ojn~Sx8QLS-quMNO zjy6wQpe+q*YqX8p%i30LyY`y4TidI>u6?AP)Xr)@X#dpCYge@2w5!@RkHI5*RFB=` z^te3{o=8uWC)yM1iSwj-vOMLU#h#F7rDv6Aji=7D!SkYLvuC$wpXUwFe$P9egPx0? zKRh=*e|gcX^BTN%Z*y;iH_{vBjrPWRyLa|>^(K0Iczb$#dy~Cs-b}CGJJH+NrScxC N{$U3j#-^{g?7!dGFN6R9 delta 4627 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 From 0e0e7443b7e2f4866ab2931e885cdda440dc147d Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Fri, 19 Feb 2016 23:25:03 -0500 Subject: [PATCH 07/13] Insertion sort --- .../Contents.swift | 51 ++++++++++++++++++ .../contents.xcplayground | 4 ++ .../contents.xcworkspacedata | 7 +++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8046 bytes .../timeline.xctimeline | 6 +++ 5 files changed, 68 insertions(+) create mode 100644 WFrom1-28-16(Merge Sort).playground/Contents.swift create mode 100644 WFrom1-28-16(Merge Sort).playground/contents.xcplayground create mode 100644 WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 WFrom1-28-16(Merge Sort).playground/timeline.xctimeline diff --git a/WFrom1-28-16(Merge Sort).playground/Contents.swift b/WFrom1-28-16(Merge Sort).playground/Contents.swift new file mode 100644 index 0000000..3b60ec7 --- /dev/null +++ b/WFrom1-28-16(Merge Sort).playground/Contents.swift @@ -0,0 +1,51 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" + +//: Playground - noun: a place where people can play + +//https://docs.google.com/document/d/1rlQ3lstnNb3fOR58EwGDysMQ0FSDkUGykcCoU14B9Go/edit#heading=h.za36ai6n5fth + + +//Insert code here: + +var arr = [10, 4, 6, 12, 3] +var index = 0 +var count = arr.count + +func insertionSort(inout values: [Int]) { + print(arr) + + func keepSorting(var i: Int) -> Int { + + if(i < count) { + func compare(var j: Int) ->Int { + if (j < count) { + if arr[j] < arr[i] { + swap(&arr[i], &arr[j]) + } + j++ + print(arr) + return compare(j) + } + print(arr) + return j + + } + compare(i) + + i++ + print(arr) + return keepSorting(i) + + } + return i + + } + keepSorting(index) + +} +insertionSort(&arr) +print(arr) \ No newline at end of file diff --git a/WFrom1-28-16(Merge Sort).playground/contents.xcplayground b/WFrom1-28-16(Merge Sort).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/WFrom1-28-16(Merge Sort).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/contents.xcworkspacedata b/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..c935dffc1304f11ff49535d8371983ec98cc6e60 GIT binary patch literal 8046 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 literal 0 HcmV?d00001 diff --git a/WFrom1-28-16(Merge Sort).playground/timeline.xctimeline b/WFrom1-28-16(Merge Sort).playground/timeline.xctimeline new file mode 100644 index 0000000..bf468af --- /dev/null +++ b/WFrom1-28-16(Merge Sort).playground/timeline.xctimeline @@ -0,0 +1,6 @@ + + + + + From 4f8dbf5ea8f190d9b2ee9a6735f6ccede1155179 Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Sat, 20 Feb 2016 00:57:46 -0500 Subject: [PATCH 08/13] From Gist https://gist.github.com/NataliaEstrella/97865c26f2bf66a0e715 --- .../Contents.swift | 74 ++++++++++++++++++ .../contents.xcplayground | 4 + .../contents.xcworkspacedata | 7 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8119 bytes .../timeline.xctimeline | 6 ++ .../UserInterfaceState.xcuserstate | Bin 8046 -> 7924 bytes 6 files changed, 91 insertions(+) create mode 100644 HWfrom1-14-16(Logic+Discrete_Math).playground/Contents.swift create mode 100644 HWfrom1-14-16(Logic+Discrete_Math).playground/contents.xcplayground create mode 100644 HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HWfrom1-14-16(Logic+Discrete_Math).playground/timeline.xctimeline diff --git a/HWfrom1-14-16(Logic+Discrete_Math).playground/Contents.swift b/HWfrom1-14-16(Logic+Discrete_Math).playground/Contents.swift new file mode 100644 index 0000000..6c7adc8 --- /dev/null +++ b/HWfrom1-14-16(Logic+Discrete_Math).playground/Contents.swift @@ -0,0 +1,74 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" + +/* + +Question 1: https://www.hackerrank.com/challenges/minimum-draws + +Copy and paste your code: + +int main() { +/* Enter your code here. Read input from STDIN. Print output to STDOUT */ +int testCases; +cin >> testCases; + +for (int i = 0; i < testCases; i++) { +int pairs; +cin >> pairs; +pairs = pairs + 1; +cout << pairs << endl; +} + +return 0; +} + +What is the big O runtime of your code?: 0(1) + +Question 2: https://www.hackerrank.com/challenges/handshake + +Copy and paste your code: + += n choose r +int n = numberOFPeopleInRoom +int r = numberOfPeopleShakingHands + += n! / (r! * (n-r)!) +Case 1 + += 1!/(2! *(1-2)!) += 0 + +Case 2 += 2! / (2! * (2-2)!) + +What is the big O runtime of your code?: + +Question 3: https://www.hackerrank.com/challenges/connecting-towns + +Copy and paste your code: + +int main() { +/* Enter your code here. Read input from STDIN. Print output to STDOUT */ +int testCases; +cin >> testCases; + +for (int i = 0; i < testCases; i++) { +int squadCount; +cin >> squadCount; +int handshakes = squadCount*(squadCount - 1)/2; +//n choose r = n! / (r! * (n-r)!) +//n choose 2 = n! / (2! * (n-2)!) +// = n! / (2*(n-2)!) +// +cout << handshakes << endl; +} + +return 0; +} + + +What is the big O runtime of your code?: ? +*/ \ No newline at end of file diff --git a/HWfrom1-14-16(Logic+Discrete_Math).playground/contents.xcplayground b/HWfrom1-14-16(Logic+Discrete_Math).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWfrom1-14-16(Logic+Discrete_Math).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/contents.xcworkspacedata b/HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWfrom1-14-16(Logic+Discrete_Math).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..d006c71e0e9e5c94080924ee55e6065fe6d441bc GIT binary patch literal 8119 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 + + + + diff --git a/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/WFrom1-28-16(Merge Sort).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate index c935dffc1304f11ff49535d8371983ec98cc6e60..57d32171b5d48f5e476616250d19d73d96ee302c 100644 GIT binary patch delta 4900 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 a+@0M0+$ruyn|d-}?DqYw=6mSsPWvw;?x8#Y delta 4855 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 Date: Sat, 20 Feb 2016 01:01:37 -0500 Subject: [PATCH 09/13] Almost --- .../Contents.swift | 24 ++++++++++++++++++ .../contents.xcplayground | 4 +++ .../contents.xcworkspacedata | 7 +++++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8039 bytes .../timeline.xctimeline | 6 +++++ 5 files changed, 41 insertions(+) create mode 100644 HWfrom1-23-16(Recursion).playground/Contents.swift create mode 100644 HWfrom1-23-16(Recursion).playground/contents.xcplayground create mode 100644 HWfrom1-23-16(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 HWfrom1-23-16(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HWfrom1-23-16(Recursion).playground/timeline.xctimeline diff --git a/HWfrom1-23-16(Recursion).playground/Contents.swift b/HWfrom1-23-16(Recursion).playground/Contents.swift new file mode 100644 index 0000000..9b871e6 --- /dev/null +++ b/HWfrom1-23-16(Recursion).playground/Contents.swift @@ -0,0 +1,24 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" +//https://docs.google.com/document/d/1KfnTOtPnBrYPFhBRAQPZBXor_mKDQvuJp4zwZbtHkRs/edit#heading=h.16sfqfmanxte + + + +func printBinaryRepresentation(number:Int) { + +} + +//1 + + + + +//2 + + + + +//3 \ No newline at end of file diff --git a/HWfrom1-23-16(Recursion).playground/contents.xcplayground b/HWfrom1-23-16(Recursion).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWfrom1-23-16(Recursion).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWfrom1-23-16(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata b/HWfrom1-23-16(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/HWfrom1-23-16(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HWfrom1-23-16(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWfrom1-23-16(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..1141cd50b51f644323796bd3e6caeac94af28d6b GIT binary patch literal 8039 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 KKb3d)(SHM+v+IEX literal 0 HcmV?d00001 diff --git a/HWfrom1-23-16(Recursion).playground/timeline.xctimeline b/HWfrom1-23-16(Recursion).playground/timeline.xctimeline new file mode 100644 index 0000000..bf468af --- /dev/null +++ b/HWfrom1-23-16(Recursion).playground/timeline.xctimeline @@ -0,0 +1,6 @@ + + + + + From 7085d5ed637caa59068e857f7e09a5e45fd6c0aa Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Sat, 20 Feb 2016 01:15:23 -0500 Subject: [PATCH 10/13] Almost --- .../Contents.swift | 33 ++++++++++++++++++ .../contents.xcplayground | 4 +++ .../contents.xcworkspacedata | 7 ++++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8164 bytes .../timeline.xctimeline | 6 ++++ 5 files changed, 50 insertions(+) create mode 100644 HWFrom1-30-16(QuickSort+Lists+Queues).playground/Contents.swift create mode 100644 HWFrom1-30-16(QuickSort+Lists+Queues).playground/contents.xcplayground create mode 100644 HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HWFrom1-30-16(QuickSort+Lists+Queues).playground/timeline.xctimeline diff --git a/HWFrom1-30-16(QuickSort+Lists+Queues).playground/Contents.swift b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/Contents.swift new file mode 100644 index 0000000..f3c5113 --- /dev/null +++ b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/Contents.swift @@ -0,0 +1,33 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" +//Answer the questions in the homework below +//https://docs.google.com/document/d/1KlK3PmRMybmHS5db_AP11uHXIcbIeM5vHuuAZOV3xME/edit# + +//1)Without looking at the Big O Cheatsheet, write down the average time and space complexity for bubble sort, insertion sort, selection sort, mergesort, and quicksort. + +//bubble sort = O(n^2) +//insertion sort = O(n^2) +//selection sort = O(n^2) +//mergesort = O(nlog(n)) +//quicksort = O(nlog(n)) + +//2) What is the advantage of partitioning quicksort in place? +//Answer: You dont have to calculate the median? + + +//3)Without looking, implement quicksort. + +//4)Write a function to generate an array of random numbers bounded between 1..<10,000 of size 10,000. + +//5)Describe the algorithmic difference between mergesort and quicksort. Where does the sorting happen? As the recursive calls are being pushed onto the stack or as they are being popped off? + +//6)Given an array of strings containing “[“,”]”,”{“,”}”,”(“,”)”. Output whether or not the parentheses are balanced. +//Good examples: () [] () ([]()[]) +//Bad examples: ( ( ] ([)] +// +//func isBalanced(paren: [String]) -> Bool { +// +//} \ No newline at end of file diff --git a/HWFrom1-30-16(QuickSort+Lists+Queues).playground/contents.xcplayground b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/contents.xcworkspacedata b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-30-16(QuickSort+Lists+Queues).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..4acc4d3d4589b690572f063d4d7cc59c64aa8321 GIT binary patch literal 8164 zcmc&(d3;k<_CNPF>r0cqCNCR^B9u~uE|j*kG72qi0clI23#A2O+Ps!Xnv^7^)LJ>B zEUu%1=qPFzWOKt^5EMl=MIB{8WE2%qT*n31QO3D1uP<#J=JVtC*EFBzz1-z2_niAZ z-}_#Di_aShXJq^h2vCRv6{tZ&chi?^k`{}>kT>A3Nea|oAvT0VbCTS_h6P^MT$vOO zw3vac=z5fY4YZ&G3kYC^k&ptT;360eV;~jMARWd*9?XDpm0xF>js$n+Nz#OQB zI&echG(iAbU=ai%1dHKnSPIKvIs6%Jh1=kE*aVwl3p@x9!Nc$fJPKRkF?bxFf^Dz^ zUVxWi4;+Rg@HQNUciQOdSu~I4(*in~PNyZblvYs}6{(jt zQ$G#R5M4sAqDZf!x6<3_?Q}I=L+_&N=)JU?Zln*>$LQm97k!bwRF&j!_4y8g9yl;S zJS2d5c3DN*La{wm%dUN4txjt2xkI5IFoFpw#`ORXiKxOInB?MXm%jDFx2915DNnht<9o8tSGj@`H;L3 z?BD<=41&RM9t=S>YEX+h)FX$6jc@@Bg$tPlPDp|g7>`CwV76%Sb{vE$^CjtCzbDXE z9CSB}F8)H+FeB&@gQ6#@wbETbIp7Zm13n+iTNi)nK$BuRU6}=W;|ubN#---uj?YQW z%E``6%^R1Ul{z_VeD1iMtgPa^tU?z*W}pCBeZPV#zjslqIL*V{^fr3Mpo_nN4bN`~ zv+Z$qlU%%05*Tr#G7#|9yMxn0)!vY|-p4$0^!K^z3u3zL9UWtHGR6$e%m<0Jy0F#l&L^PuX1+=0K?daGHMKA)Uz*Lw9m$ADNC`BiW z(O^6eM`1a;tHC*#;^J-jp%4QWw?ACu@rDDzP>H)e&>D8}JoB_-L7=V7z1Z92W<7PR zfyJl9T`&4ve5$k%N+!jGtt#yGdBg4bLD5~oKr3AB729NSQBhLg9|9L6qEHNZoBU^y zAQ>df_lhAY-Pp8ZuTLy@hZoFaKV=`Ji9G0Be8$w-#lb-H*wk?usbh0eX10187FGm; z;n5|`<{N8Y@ zM=T#csgnokPfnCDw9YN7DD<+F4fx$bmKkBlRn)Y>m48rk6;qRpNy8@vh7J&daLxR( ziqh7wn`Ln%!FmCu6q9va3)i`LOLRcLvR=4$pt==s10?stN>~Ng<3%_c$MnLDa6R0N zsW=8Nm6mBpO+&yVrmI3bD0j%UB`$SdkJv(JmK1^uNrh2nSmm!mUA3 zad$P`E9L(hxC7S0op2ZY1@4A>U>&AmI%eQl%*1h+h1r<1ndSWb&;{M>+6(L1_Xd{p z<1rU6X4eV$C-!}bWUsWLi-N&Gkfl*r40`=dMSf|KJW_V`ZTnfwU}iaMn9NYi-4YT# zQqoD@NVAu;xcwf{BYP-Kld?2a&|cZz!VtqMHN^PLr1wpYij#)2HVJu{G6q(Ew8q7o zSzmPg6qc^su_YIdS&`xOV!jW?Ot^w`4Blk)$_QGqByaD#XemDTHu#gD7S`l`KTSL*lz7V_k1gX0(IMM{gx4*-CVD5%@v8Wr4W3g0WrJ>bs zA4}r=h`Gwp6L3<3ijQzgH++m!CHF?06YMAgK7%hIxd%RnFK`-OCf$6_Zl+;M`Rs~7 zYp_8KDI-tA4^gXr#1c$WI(~tFLULD^q?_;0h)8C1Dr5ddK$%Pk&WKJXDx!%xAZbqN zn?X1duYe#i;!I45WCY=%v6mzgGqK<-tiPJg7=>_gJhCRAbATJN3uvZ z$syxOF3BSolL_QcSc`Qy7w6%8bm8Ub#(Hen0wc&oGKtZsA}At-q=*!gDQt&$@HR%K zob0n2H{vGT8VRa|D1~BuYg3aLls&bvbd;-IDZ^VAOK`u(9rUn*&N|AY1uZg3njuw3 zNs2s&ZNX~!)FA(^XsvH%VrmCS=a*-+&yUA>9jBFcOdmjP$ZwizYsw49x0dujbo6N@r zm{M8l_WG6HdeR8yUeZ83L_{xMfeU*{6I*C6`q{}SE3&S*n*2N zh#?GbBv+A6ay41XKG%?C*ouo0@kaK!32(-fxeUR?LYCW7y{MCIidf6)SbpTpCzY<) zfUtPTc*%Ms+ENx_=1v7+&(b$o=_^{o;wv33`w2^((pNRB#Kqei0?ldemKL9w<_Vu= zOWaIWgZTk+3;8p-mE1;d$2MGo?RX`2JV4fvJJ=SuliY<@VJA!ct8u9m6-Rl{+stT= zqNmc^%yzN6xrLo^{?OG|ohL7F2i=TO1ZTPZP2#+%UXPgX^C^78k>9`&G!zK7=llHu zIY(!EJ>dlmrvD&MDFm?shv)BDGU5H>J3gHwmD;hHV{pNY!562k{ON4-2OgX ziOcW?yarde`1B}kiV0$2KoXZ0CFfBVC8y=1Qd(}sYgt;7C&-h`;-}cYc&4^rM^!{S zUdJ}d@^dX_5uQP|ljmH#RC4>1k!fdJDk8Dm?G5&j9gzEfjIk{JUH&^nUSQ_!A}^Ac z$nH8%-*J^?-kh+K6}SqoM{w~SjcjLJoSyza!2fjF_q}8vqgN30Bl0OEuO}zT$K(@o3fJHrxEAkRPd+1`lP}1Zco*J>UD%B& zH6>zW%n$zTGNzM1<2l6BN3IBq3<2|@eIz<$b zUm=O1l@sq}Wt#D=!PV}dS3+I(j6iIQF#lQZHkl~8_(8F~eRZRvAt0R$hQ@S8rn9pt zJNq^Sy)DvFoE7t!Ara{k^hef_#zAIRw75_W)v@-WQ)P}wIK$O@~Cp|BQgq@`4v$bC@(Y57252R~!7#$Ha z@?$!Z#b`r>0!9XcV!&uRMh>phkWR-&Ey~2ribdIyMLBdlZo!B9ExMRqGEfh_lupD4 z@gYo_!}gJ!y2B@VFORXUkWPu2GnG!mNAOXF+$*d_VoSp(&D|B5`!`xfXV7vm(3xa6 zt)P|cAQlV+!g4N2gr-cQU%b6Z^m|)FvS#V=lei=-_c&VQg7zO>_$=EfkKuDiXf>V9 z6x7f;w3aEEN$0Ugjq{JL=Z7~mxVnfnHmr5{suEQf} zMX#aDT>S8J(9lD#m874`P$j*WQ}*m+JzYUp(pB_&+=5jBOXh_w0WUk)L>_uFlIxLI z_YP?6rfcyfwx{|5o!%1x@7@3Ff+~goK4u^o+0$j^p&IR>>m|y64c^pEAHcoQlPcXr zw@BEx8TWP52k`*w7~s;@h)etbw=OAJ@C4lk$!BN8bUS@cV#M@$d<9>PFye!l(nmkn zz1vSe2eM9<5oHzA#dgsn!+;oklkTB=t0H-TguU@`!Z7xpCmSw?iR=x>3HEN|C-y!= zFBJf4rgnzygXs`jNbBeV+D6-H2is>$*-p5YE@$s6*0MJice8gE_t7qC`RNn%?Knr= zlsIqP^0=HA_{gs#XP5%T%|ho>#r82DL>!Or4?5RF6|Pszd6<>Luz9 zb*Fl%dbN6;x?A0=en7oZ{iJ%E`Z@JZ^-JoP)qBjd3sU6w9eH(obMSE{Sj)#@5_9$lj@pli_ubsf5^bXV(E>Q?D)(A}w9uiK#8 zq}!rK9f-MT%xeYyj>S9K@!8hy6DQs1Z#=@;vl=sWbC`lb5Y^!Mqz z^}YHH`c3*R`nUA&>rd)G(SNG{O8>R~Tm5PM_xj&BJr~cJxJ1svS-D}{a4v~U=JL2= zZW=e8E91(!S)7Zj=R8~!=j9f1OSlfMlS6J9cO7>#w}xBG-NoI_t>ZRxk8oSL$GK;? zZQOI*PHr!Eh&#$1yxRD?J~o^(d}jE<@Ri|f!?%Xhh93++8GbSR8gGgp89yn$EMAOn ziC+=FIeusS{`kZ3N8^vhzZd_0{D(%p(PnfS2OG~f4mA!ljx=T&Cm1g=PBi8lry4Ia zmKe*7<;JUwYm5&WpE5pc+-}@qJYYO(JZ5~?c-;7b@r3cD@e|_@#-EJ87=JaMG5&5M zrZ|(@WHy~|$}^Rkyrz|=)ux9{+f92+`%DK+ubN&ny7?nC1d@=F zkdrVop*>+)!c7TxBy=Y{op2!GXu=n~me=zJ-pD8LiTq@~grC9B&$IW`P$((0)n{P1RX};h5 zp!s3*qvprV+s(Vod(5w!-!vaGA2xq!{>A)H^RMPJ=6_iX7Qte(I4pxK=UGNrMp{N$ zMq5%X>6Tnefu+SimYXcMSZ=l4ZdqelYkAW0rsaFVDA)wM;1rUD zQNm~;O~?>3g<@fO#&t8lxpMp!G{FFYhX zCOjcLC2SXV2+s?b86 znq*D3rdTtr6RcCMrPdkNnbvA+jkVS~*Xp;nSyx%_wLW8g%lbF#5$jRwG3#mTZ?-sF zf-Tc_scn+2z*cB0w$<6@*<3cat-&VR{I*55kge6W%yyk^g>98>t8JTYuWi5W7284E z$F@_p&um}VzOwyj`^EOF?TlSx&#-6PUG@d`TkNat+w6PoZ`j|oAF>~|zit1(e!_mz z{)zol`{xd|!|up(Om|c|W;^CM>KqFkS2%nQzvD~C500N5|8)H3)H~yyCTF74;a2|BN?R>}icjtS~_njX)zjXe?`Hk~C=l9MZoj(sE cgA9Z0gGLQX8 + + + + From cdd8c8a3a0ae58ee325d64a11a3abc72e7664a1c Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Sat, 20 Feb 2016 01:21:14 -0500 Subject: [PATCH 11/13] Almost --- .../Contents.swift | 44 ++++++++++++++++++ .../contents.xcplayground | 4 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8129 bytes .../timeline.xctimeline | 6 +++ 4 files changed, 54 insertions(+) create mode 100644 HWFrom1-31-16(Sets and HashMaps).playground/Contents.swift create mode 100644 HWFrom1-31-16(Sets and HashMaps).playground/contents.xcplayground create mode 100644 HWFrom1-31-16(Sets and HashMaps).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HWFrom1-31-16(Sets and HashMaps).playground/timeline.xctimeline diff --git a/HWFrom1-31-16(Sets and HashMaps).playground/Contents.swift b/HWFrom1-31-16(Sets and HashMaps).playground/Contents.swift new file mode 100644 index 0000000..95fc42c --- /dev/null +++ b/HWFrom1-31-16(Sets and HashMaps).playground/Contents.swift @@ -0,0 +1,44 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" +//: https://docs.google.com/document/d/1T7tYRqpDPWoxarfmXqfRCHB-YqvA8-Qx_mEyy5smtfc + + +//Homework +//1) Write good hash functions for the following data types. Justify your choices and how they avoid collisions. +// +// +// Int +// +// +// struct Point: Hashable { +// let x, y: Int +// } +// +// Array +// +// +//2) You moderate a popular mobile device discussion forum. You want to cut down on the vitriol and make your work easier, so you decide to implement a blacklist based system to automatically reject or approve posts. For example: +// +//moderate("I would never use a crApple product!") // false (reject) +//moderate("I wish all these FANDROIDS would just shut up!") // false +//moderate("M$ is the worst, Linux rules!") // false +//moderate("Can’t we all just get along?") // true (approve) +// +//Write moderate(message: String) -> Bool, using a built-in Swift Set to manage your blacklist. Make your method case insensitive; it should block the word no matter what combination of upper and lowercase letters is used. +// +// +//3) Your company makes a phonebook app, and your users have been complaining about how long it takes to look people’s numbers up. You decide to upgrade your archaic array-based system to a sleek, modern hash map. +// +//Write a phonebook class that uses either our HashMap from class or the built in Swift dictionary (your choice). It should implement the protocol below. It needs to support importing from the old array based format which used an array of tuples, like [(“Caleb”, “501-555-1234”), (“Mike”, “212-555-4321”), (“Jenny”, “345-867-5309”)] +// +// +//protocol PhoneBookProtocol { +// mutating func addPerson(name: String, phoneNumber: String) +// mutating func removePerson(name: String) +// mutating func importFrom(oldPhonebook: [(String, String)]) +// func findPerson(name: String) -> String // Return phone # +//} +// diff --git a/HWFrom1-31-16(Sets and HashMaps).playground/contents.xcplayground b/HWFrom1-31-16(Sets and HashMaps).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWFrom1-31-16(Sets and HashMaps).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWFrom1-31-16(Sets and HashMaps).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-31-16(Sets and HashMaps).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..a8036052f8db09854eaf06cf49129d1db8562913 GIT binary patch literal 8129 zcmc&(d3Y2>`u?giXHR;jGt+Z%Xp|6wkP{LJh#?^f;R=x)gajBnnNAp)%!HW!@9dab(E)9Fb@*=PCZ_bhps>FKKazOU+g z>;2y9u4(jof}ymucK`u~7*K&4H24U9xiVqC7zld&zRCoD&COzMC^#cQ2-ME;(A#AR zA%CM8&>ijDxz|ApIp%Lam0D>?dZiU-m5iEuKVFf$@E8$7l3|n9;JO$g}Y1j_Wz_aiiya0P( zKOBUY;1xInXW<;Y3-7`E@F(~LzJd$z4g4K0!4L2+_yxrvJu)FH>W{8MiD(c?MQJD< zO+XXTBs3XKLB(h)DnU1*X{Z#p&F!T36yf`{X5oQw1DI6MhY##3-Pc3}~F za0B*XKMvv+dP) z=7HfgnV53kg=KE`#8bn`6acqOD zAaN7e!2wR_1AU<%^e1YfAzGp%dcqLHCb$~n;Tqb^LIMmVv4kZi+KkCc(uX9?maKbx zZhv!OKxhzM+%@#Z)PP$Ii0+8jGNERi-xmt_y7BKVZh&zo;)l)IXx?>R15{< z1)n>&zqcqYt-#15E6`geefTqUhhTz*AaWGWLvVna~Q zX)V-sf*V9~H5o_-DF)`iTrhWn2W}?u7gM!ho^<_+CZ`+&;Uw zbV^f5pa2eIs|$#PF4@OoSmNR=kq$l1x?pi{cXz-&kk|!x!d-ATxsD7WL%ZN!xEt;x z$z&+GL0YE%m9>7im_pMq$rDP6Bs*n7FxVv0ogP;zdTD(U-H|327ylo|l!gLLwV|ef zs7&`kSR+CIA$S-bfk)vnSOt&66R?`3kW`XJ(n$sxMuwA2lC_z_eI2wz2mS7X_4IQi zh5HCHl8mC?qsjI3bBq+Pw3iD40e^rZC?p0vzWM^6v`B6VSlv5*8V#66PH&8(ghe4E zx+T0xvyn!(G*UQ;Zh3~%FbSZ+ywWs3`@1t>X zX4)3%Kc1qskq+S7+9<=MNnDeWnLRWH9O$>c9JdUcPH$k80t7AZxDj53V{jZ!(3HGJa>!VcOY&$k z#%+W*=%T+x|Gy2VNj_cfN%a2|QY5t1G(Rc(pQ8x0# zI)6ZnjF3(Cquoo#O(_itp{8J@tvkgo&LlN=Cr28f%S%E&L-A&_Bs!lAtvF2tPq$d%NV8>j6U;6bqF;zamfuBSfY~1|t>HL}Hgb zCv}fN42o6w53%G%k`x95;-Ibz#UV4YkZGihR7Cg=*^o1eh;mS0T8By{B5E8PCL+c3 z)#%!&p5ssgagcJUXLEa0&m=UYcTY5w+MF)glnY6u1jvQNms%dAS|Zgagaofg5QCwB zNH=S0Nx&Z##HqB#hmwb<7Wo^*W?HjSo5H`7shXl?Mv_3m)c=;ZKUNBqfyO}M7BmbE zN0}%KjX)z&HX4OSqw7f(sU|bYEHaz8$W25bHKcY63`99-EY(c~P=NAL0V+h}>ArB2 z2dH{-(!U4ECh{bCCY(=+NAks*ruup@AWzapK`58EDU@Yh6xKes5OC89P8&)hWh^{M z8X=WK$%;INZoCTlm>~ZyZK`RYW~zEw z;wOz{9tn^j32j2RpoQpGbQ}G<9W5eFWIiF}Ui!C;+((jTQr;5tDXgU`Q7y+5j+R!h z-0&e!Dp=78q4|(mlD0@85e z`U9=GKA&I4=yZ=eG>78tclH$ek2W|UcYn*6f{^Oxs2GFt&k&32H`L zdU|G-RCmvy^=Jba&_=WgJ&87>EoduxiqexZkIDYp@cx+HvzC%d4fklE!0ov$6@RKC zTBg=1V|&`jon#TYhulu?aB-;-trV5Re7|HaB_hTn(n&_;b_tcwki`_0Xa{0`O=H~HUb zbdW}N2pvW*p(EAq?vp9S+>DTd2XYs=n}Ca3P)GN~sMOT|7t$Y?kw$ryeqQc~kSb68 zD0-DjW-8v5bSbIsM8~8VU#>|Wc>$4N~VIjr%g3C*%3 zba8#6Tf1vTX{}#61H?x)hKKtDw7v#w1D;0dyiE&uRF|-IiSEPeh+`n5JyKAx2J2`I z#9Feh0}5z-G`2YUC?n|icB@}$;vDLpA~s@9(Q-JBbarbw%+qr#wqhIUA{!z)4m)wb zD9!abzKX8>dP$w#8sZ5Chv1=da+RT}I6V?k2HC7c zlqp4&g-4JrWLr-}qwtvCe(()AhioNJk%Sp^3(3$OFxGQZl*fELK59%6o2Q|4H!G~Pd248@Irj6 ziyK5!8!2T`4~3$$(TQ)9$ni?MhlvW`ju*MO0axIm6EBvmUrAR5*-J5fK(Zd+f$zk3 z;k(HJ@*+7%4z0)c;$`?gN+*ZO%j6ZAP8{+{H=2AYeNrwkDO@Z+fTVZ&bn9=qcUb%d z3;hAPJD*2!Jh##Bp+}hTGf=8&-SX-_40Rp&5%Ln{*azPLZm$JKZaZpN*+jc&5r=r&l4 zm(rIJkI>fRiUa#HBmKLRjeveO;eSrDpY>eBGq!$ zi>gyS1a@?NiTF2i5b{E$Rj8o$B4{1L}k7 z!|EgIQ|iyvU#S18{$8Wf=ruM?Urm3_)tUrNq9#dmoo1Nkdd(!wG)=W;o~A{!RI^O8 zT(d&6QnO0)gl3Iqou)%`SaU}6gI29|X!~gUX|K}8Yp>NNXcM(b+UvAqv^m;b?Ko|L zcD#0ic9M3AcB=M9tykNoy*nejbn|u1x>nsH-D2HR-Adg$U5Bnqw?Vf_w^_GUw_CSYw_o?7?vU;!-OIY8x{vfo zpQfLx7xX^;Jbh3Cfoj*MF!#um4Q{h5jr3pY<2@ zm-N3em{BoWM$Z@+2jgV=F#VWR=6WWF$z}4HLZ*l*XDXR0W)|aO1jfhAV}i_lriEF+ zEN1RumNCnj70gOz9kZU<$UMnxW41HTGCP?4%yH%o<}K!J<{a}L^8xb_^Cj~w^8@n} z^DhH3#2C~Dt)Y+MUc+OCZHDcJXAL_HFBoM}%doMm ziH&0|tb-lM4rNo=G&Y0HW=FGQ*c>*OZD5zOYuJtKW_ByPjor&0XHT-Pvv0De*wgG8 z_8j{qdx5>ke$D=s{f527e#idP7-KXUuQT3YtTMJ3ml)R?w;FdEcN_N__Zwd{9x|RZ zzHWTec*=O%c*c0nc**264Kn4KZZ-u?x0>!WJz&~s+G9Fq`oQ$P=||Jgre93Iaflnn zUC-rkx!gFegsbKRu9g$IdhQ;xuu(xTSH+&zR>Tg*GmJI%Yzd(EfJ=gl9R|78Bu{F(V1 z^N;4A&A*s`vmgs&iM1FloW*S6E&VNnEE$%Gmg$z8EHxIlrOq+ zD$7pGdzMR`-pbqgA$&4FiXX%0@OgYbU&v48%lHbulCR?Hc`xtd z8~G-_nQ!IW_$B-U{3HBh{NwyOzJu@LH}FsM`}qC*0sbKW8viDLihqYc%fHKi!hgwM z;4kuD^FQ*xTEU8~TC3h_u(DRWHQt(R&9Dx)W?4sD$5?Z$xz*Z zt+1`KZL~dU+hTjl_KNLQ+i}}T+v~Qow)bow*gmp-Y3J-#dyc)x?z0E&tLz)?+wITV zci3OB@3J4Vzhr;ee$;-Npm-gA85 zxZwDU n4d+|Vx1H}e&pJPLUUYufN7Kj9CoZfc0psrPSLJWzvybK9P^SgS literal 0 HcmV?d00001 diff --git a/HWFrom1-31-16(Sets and HashMaps).playground/timeline.xctimeline b/HWFrom1-31-16(Sets and HashMaps).playground/timeline.xctimeline new file mode 100644 index 0000000..bf468af --- /dev/null +++ b/HWFrom1-31-16(Sets and HashMaps).playground/timeline.xctimeline @@ -0,0 +1,6 @@ + + + + + From 2b8d6c152d7ca4d41d4302db26b361d7f0d3a4f6 Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Sat, 20 Feb 2016 01:26:39 -0500 Subject: [PATCH 12/13] Another One --- .../Contents.swift | 65 ++++++++++++++++++ .../contents.xcplayground | 4 ++ .../contents.xcworkspacedata | 7 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 8318 bytes .../timeline.xctimeline | 6 ++ 5 files changed, 82 insertions(+) create mode 100644 HWFrom1-24(Recursion).playground/Contents.swift create mode 100644 HWFrom1-24(Recursion).playground/contents.xcplayground create mode 100644 HWFrom1-24(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 HWFrom1-24(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HWFrom1-24(Recursion).playground/timeline.xctimeline diff --git a/HWFrom1-24(Recursion).playground/Contents.swift b/HWFrom1-24(Recursion).playground/Contents.swift new file mode 100644 index 0000000..774b919 --- /dev/null +++ b/HWFrom1-24(Recursion).playground/Contents.swift @@ -0,0 +1,65 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" + +/* +Homework link: https://docs.google.com/document/d/1INvOynuggw69yLRNg3y-TPwBiYb3lQZQiFUOxZKBwsY/edit#heading=h.za36ai6n5fth +*/ + + + +//Question 1 + +//Appendix A: Recursive Fibonacci from class (non-memoized) +//func fib(n: Int) -> Int { +// print("X") +// if (n == 0 || n == 1) { +// return 1 +// } +// return fib(n - 1) + fib(n - 2) +//} +//fib(5) + +//Iterative +func fib(n: Int) -> Int { + var a = 1 + var b = 1 + for i in 0.. Bool { + let success = Int(arc4random_uniform(2)) > 0 + if (success) { + stepNum++ + print("Yay! \(stepNum)") + } else { + stepNum--; + print("Ow! \(stepNum)") + } + return success +} + +func stepUp() { + if tryStep() { + // We’re done! + return + } + // Now we’re two steps below where we want to be :-( + stepUp() + stepUp() +} + + + + +//Question 3 diff --git a/HWFrom1-24(Recursion).playground/contents.xcplayground b/HWFrom1-24(Recursion).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWFrom1-24(Recursion).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWFrom1-24(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata b/HWFrom1-24(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/HWFrom1-24(Recursion).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HWFrom1-24(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-24(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..1ed9bfed04e7e9ffaeafa08b0310d3a89116456c GIT binary patch literal 8318 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 literal 0 HcmV?d00001 diff --git a/HWFrom1-24(Recursion).playground/timeline.xctimeline b/HWFrom1-24(Recursion).playground/timeline.xctimeline new file mode 100644 index 0000000..bf468af --- /dev/null +++ b/HWFrom1-24(Recursion).playground/timeline.xctimeline @@ -0,0 +1,6 @@ + + + + + From 47cfc4a122a1e7527f5216c4f5962519ac719362 Mon Sep 17 00:00:00 2001 From: Natalia Estrella Date: Sat, 20 Feb 2016 01:38:45 -0500 Subject: [PATCH 13/13] Almost --- .../UserInterfaceState.xcuserstate | Bin 8318 -> 8318 bytes .../Contents.swift | 65 ++++++++++++++++++ .../contents.xcplayground | 4 ++ .../contents.xcworkspacedata | 7 ++ .../UserInterfaceState.xcuserstate | Bin 0 -> 7863 bytes .../timeline.xctimeline | 6 ++ 6 files changed, 82 insertions(+) create mode 100644 HWFrom2-05-16(Trees).playground/Contents.swift create mode 100644 HWFrom2-05-16(Trees).playground/contents.xcplayground create mode 100644 HWFrom2-05-16(Trees).playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 HWFrom2-05-16(Trees).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 HWFrom2-05-16(Trees).playground/timeline.xctimeline diff --git a/HWFrom1-24(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom1-24(Recursion).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate index 1ed9bfed04e7e9ffaeafa08b0310d3a89116456c..21ba79e78e9e33ddf3abe8f07fcb1fff73b5d0db 100644 GIT binary patch delta 4183 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 aH1tG!8he_0VmzHZ8$2gG7md9QPW&%Pd+;~_ delta 4241 zcmZuz33wD$60Uk-rswSL>F())aApIETp2F0x6VB zL=Ia{IWh@1s2n143WzQWav$OWtn2Ek2%>U{xceqB0ruPJ@0<7fy{fMNRsB`<{*3=K zeql-3Ko|stPz1#=9wtBuOoT}=8Kyuf5X^wN@Cqz~*I*^Ag4M7FDq$DA3%lVx*aLfE zAMA$%a2!s+r*INZ!D%=HXW<;2hl_9x{sI4jAK^Ou1h?Q9xCi&)AtEviK`S~?Mi(kr zuMF#B0}R8zU=+5%Xl#iw7>n)j1^gR!!bD8MKA4JW*cbcZP#lICn29-jm| zA*=>7F*6gGh1r?J6y|0%S#4H_HDk?L6l=kvSxeT2#j*CR1MAAVu_V@urLn$j5F5@$ zusl}G#`NajyIjDZ3eOA+)Ohu5FO>rMlxkfu;6MH*q|+Quo9N98C35EFfw<42D4RpByj znPQ9=%uS4~rm#kX^1PD@#uxW3^!b9IrouFcC@-hTv+z8`!gP4iSY)o*bUM5QaYItl z5_7YPa|_0J3nv8?X2NWU@WU)>?1wqjgj+vvj_xoI<_A_^rKWyZK+Pz!Z?ZRcOi;&w zrJz*8>#!J>P;-i+7L~A!pK1j~^KaY$zgpat7kHNrZLZE3Aq6`jeWNIArT2!XD$Tygeg}yv*aqa{k0rjPns;Hw4?fp{H`la@)KpVuJ4X_oR z96XAYPGW|vO$qoRdTO%R)VM+sG|2@z{iLpSQ^p@B4r2GfwTwO9*7 zu{PGBp_D~F8bOf*diq8br|0@g2BzkY%&D3U>RCm}s+}qp2U06& zCmf#(*lCE3FajfK7-i6K@~-9aOU9jc8 zq}YbC{gBLsxuC04!I+|gJYSdGykcKr0ELV}d+jkkAl`vS`Z0lWIGeh=LR)mkZWY)C zyHYNVp>aXk?wAZp1@^$6G>S%7U<&r4Jj&->nkKi)PRD`I><+@gR6t`X@rfV8gCqjy+JTJrc}Z)Tn^p|H?9sS<}nYlsUP%tBuPTs9T?aRe1V0+%%^0B$tq(RiBp z1Y7|YK4ZQJi)jLtaP!qAEIdAUc$N9!_a|ZLGdfdo8cm|f{6K$qg@?X`Gaglq^Eeyl z;LDsZb2-)K;j6|8M~?z%q5chb&8CZBEwHNmptHtL+ z_Cp*WBg%q4JBWv>33HfU4%F0uk)wg2e25>>Tzd6MP(H>J&p7x~JV~$6JWA{x9$!`! z3f`it8V8=ki~l3~85f;TiQ)01;{jT5>7eMBcnu;d@hiN7S7{+FqSq?%ANV!?lMGr* z>jIRoYb;be#udeEY*Tb&ff6<_sQf+t3K5&|2mBGQ<4<@4Z{p8*3xA>4X)!IKrL>He z(+YZnR&IhucpLBFT|VB&-}(O^JpESDYAWZWpDOr&CFf+kyS6lplPo>AD3=pC)t6Ol z40dlHXl1r?T2tjs=3q|VXdY8N%~xE>S44>81&O~@d63DE#kn_`irva-+@p2!xSOQlMJ-^7xs2*-y1p7Q>zg z#m`#NRzHiSH!1OvXu3CVyss#s>Pta{ZCN|c81`3s%ge zN7_c)1CsPQ#4_GQZw zqi$$KtN(WwVdvR}$9Iv>=yH`xCyESD*guh9MV2iwCWL-mHl@b=8Y^p@sBzUKn!-%c zrX*9IDc>~Nw7|5;WSAD4mYSBE-Y~5)tugscm8SPhdrkXI2Tg}eM@&aeADNDsJ~5pz zoiu%C2D54oGsl@bnFpHl%?r(Mm^Yd?nKzrans=Fxo6nlBny;I0ns1qZGv6`a6B-E3 zg=is0h%FP^2yKP-LJuKT=qscP1B490D`W{iVWeOPTZ9jU6T&IsjBrl4CfpQm3BL-r zg}cIi;eqhb;;@Jo*`io9i*BiD3ANO*G`7TAdRwwBWLa(5Y&mKq6^tYlU@-b*FW|^|1A#^?U0*o81;^Yiw(3 zYi?^{YiY}}<=F~s<7`DXvb|zkWHW4wZA)!$+qT>G+AiC!*dE%=cGX_r-q_yM-rU~8 zzRJGdzTbY>e#w5#VRy)mc8)YhspDnGBF8Gn8i(Ie>DcPn;n?js@uB1Ijw_C< zj_Z!wj=PTgjt7p1PP5bEv^gD4(J4D?Im4Y%&MwY0=Md*G=Wu7HGuxT(EO3r<7CFZ| zOPq_HJDeAsH=K8!_ng0rf@l*Rq9nRRRg4rHi><}BVmqWyK1^xx>~tnU2R-#T^(JWU0q#Cu2fg4Yr1QT z>mAqUuB(bkQ53i0Q9_kEN%0^|gvQ>FY*`}OUzEK5LQzO;JYE!kj+Cpuqwo+r& zHfme7r<$VnR#Vl!YPvc=9i$FXhpEHWDe7ExwYoz+tX@`s(yUrNEmmuCt+O-a(Jo6ZB4cx}K$v&~xn%*rJvU?>YwSK>p$stJRu&7$L4W(Tprcq k_INyvJW-x@o_J43PogKu)5DYO>E+4v9P?Z--mQP^zl0(CNdN!< diff --git a/HWFrom2-05-16(Trees).playground/Contents.swift b/HWFrom2-05-16(Trees).playground/Contents.swift new file mode 100644 index 0000000..9b6f9b4 --- /dev/null +++ b/HWFrom2-05-16(Trees).playground/Contents.swift @@ -0,0 +1,65 @@ +//: Playground - noun: a place where people can play + +import UIKit + +var str = "Hello, playground" + + +//https://docs.google.com/document/d/1te7mLS06MEYwETFSbVBqMrIzJ43GTEo5uuCiWdB0fyE/edit?usp=drivesdk + + +//1 + + +//Bonus1 + + +//Bonus2 + +//Homework +// +//Using the Swift binary tree implementation below (the Node class), implement a function that takes in a string containing a simple postfix mathematical expression, and returns a binary tree representing that expression using the process described here. +// +//Required: Build and return the binary tree representation of the expression. The following characters should be treated as operators: +-*/ +// +//Bonus 1: Print the inorder traversal of the binary tree. +//Bonus 2: Evaluate the expression (substituting integers for the letters in the expression). +// +//Tips: +//You may use additional data structures—as suggested in the link above, you will at least want to use a stack. This can be done using the Array type in Swift. +//Test your tree by checking to see if the string returned by postorderDescription is equal to the input string. +// +//Sample input: +//"ab+cde+**" +// +//Template for the function you should implement: +//func parseExpression(input: String) -> Node? { +// // Your implementation here! +// let operators: Set = ["+", "-", "*", "/"] +// var stack: [Node] = [] +// for character in input.characters { +// // Do something for each character +// } +// return nil +//} +// +//Binary tree implementation: +//class Node { +// let value: T +// var left: Node? +// var right: Node? +// init(value: T) { +// self.value = value +// } +//} +// +//extension Node: CustomStringConvertible { +// var description: String { +// return "\(value)" +// } +// var postorderDescription: String { +// let lt = left?.postorderDescription ?? "" +// let rt = right?.postorderDescription ?? "" +// return lt + rt + description +// } +//} diff --git a/HWFrom2-05-16(Trees).playground/contents.xcplayground b/HWFrom2-05-16(Trees).playground/contents.xcplayground new file mode 100644 index 0000000..5da2641 --- /dev/null +++ b/HWFrom2-05-16(Trees).playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/HWFrom2-05-16(Trees).playground/playground.xcworkspace/contents.xcworkspacedata b/HWFrom2-05-16(Trees).playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/HWFrom2-05-16(Trees).playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/HWFrom2-05-16(Trees).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate b/HWFrom2-05-16(Trees).playground/playground.xcworkspace/xcuserdata/nataliaestrella.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..996cbd3c062c4aa52cf9d7b76d874ddeacdba526 GIT binary patch literal 7863 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 bpQj|H=u^zG#151d`r;3LPWqNVQ + + + +