diff --git a/README.md b/README.md index a5d44fa54f420be5153b2ecdc64309ef2f9aa523..a487725871502ad175b78e6a43dc8a749f919ef5 100644 --- a/README.md +++ b/README.md @@ -18,11 +18,10 @@ Instructor: [Romain Vuillemot](romain.vuillemot@ec-lyon.fr) ## Course material -- [lectures](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/lectures): slides and code presented in class +- [🏫 +lectures](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/lectures): slides and code presented in class and their [notebooks](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/notebooks) with editable code -- [notebooks](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/notebooks): notebook of the lectures with editable code - -- [📝 exercises](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/exercises): lab exercices and [solutions](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/solutions) +- [📝 labs](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/labs): lab exercices and [solutions](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/labs-solutions) - [📖 books](https://gitlab.ec-lyon.fr/rvuillem/algo-bsc/-/tree/main/books): books and ressources to prepare the lecture & learn more diff --git a/exercises/.ipynb_checkpoints/01-data-structures-complexity-exercises-checkpoint.ipynb b/exercises/.ipynb_checkpoints/01-data-structures-complexity-exercises-checkpoint.ipynb deleted file mode 100644 index eb87658d88cb93d1ccc8a931346c7a6bfeccfcba..0000000000000000000000000000000000000000 --- a/exercises/.ipynb_checkpoints/01-data-structures-complexity-exercises-checkpoint.ipynb +++ /dev/null @@ -1,253 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "a0b1f35b", - "metadata": {}, - "source": [ - "NAME:" - ] - }, - { - "cell_type": "markdown", - "id": "a4e4fad3", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# Data Structures and Complexity" - ] - }, - { - "cell_type": "markdown", - "id": "a8adef9b", - "metadata": { - "slideshow": { - "slide_type": "skip" - } - }, - "source": [ - "---" - ] - }, - { - "cell_type": "markdown", - "id": "827ebb43-1e5d-4756-83ba-97af3e36b6af", - "metadata": {}, - "source": [ - "_For the following question, if a complexity is needed please pick one in this list_" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b54157fc-f0d5-4689-bf2b-344a608bc5a9", - "metadata": { - "tags": [] - }, - "outputs": [], - "source": [ - "list_complexities = [\"O(1)\", \"O(log(n))\", \"O(n)\", \"O(n^2)\", \"O(nlog(n))\", \"O(n^3)\", \"O(2^n)\", \"O(n!)\", \"O(n^n)\"]" - ] - }, - { - "cell_type": "markdown", - "id": "568202fd", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Exercise 1: Identify the complexity of the following function" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "431fe8c1-91d1-40f3-a7a4-f4a3770a4a01", - "metadata": { - "tags": [] - }, - "outputs": [], - "source": [ - "def nested_loop_example(L):\n", - " n = len(L)\n", - " for i in range(n):\n", - " for j in range(n):\n", - " print(L[i] + L[j])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e68b3e9a-418f-4950-9f27-18bb0fe90794", - "metadata": { - "deletable": false, - "nbgrader": { - "cell_type": "code", - "checksum": "1a3b054c6051bc0e03a25ef29d1c373b", - "grade": false, - "grade_id": "cell-a06bfe9af33fe998", - "locked": false, - "schema_version": 3, - "solution": true, - "task": false - }, - "tags": [] - }, - "outputs": [], - "source": [ - "# nested_loop_example_complexity = ?\n", - "# YOUR CODE HERE\n", - "raise NotImplementedError()" - ] - }, - { - "cell_type": "markdown", - "id": "612dc873-419b-42c5-be36-0accd03ffa79", - "metadata": {}, - "source": [ - "### Exercise 2: Identify the complexity of the following function" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "76102853-e1f3-4717-8a59-1091195a19eb", - "metadata": {}, - "outputs": [], - "source": [ - "def fibonacci_recursive(n):\n", - " if n <= 1:\n", - " return n\n", - " return fibonacci_recursive(n - 1) + fibonacci_recursive(n - 2)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "dead6a52-7996-4eae-9d2a-f75d5d26bbb7", - "metadata": { - "deletable": false, - "nbgrader": { - "cell_type": "code", - "checksum": "1eadb247ef5c5224aa6800e2d7846174", - "grade": false, - "grade_id": "cell-34e130eb0c6b7e82", - "locked": false, - "schema_version": 3, - "solution": true, - "task": false - }, - "tags": [] - }, - "outputs": [], - "source": [ - "# fibonacci_recursive_complexity = ?\n", - "# YOUR CODE HERE\n", - "raise NotImplementedError()" - ] - }, - { - "cell_type": "markdown", - "id": "aa4a6ce7-e542-4b23-8a10-ca0bf93de041", - "metadata": {}, - "source": [ - "### Exercise 3: Identify the complexity of the following function" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "70af3e43-8053-49c9-ba58-346a3e915bdb", - "metadata": { - "tags": [] - }, - "outputs": [], - "source": [ - "def binary_search(L, target):\n", - " low, high = 0, len(L) - 1\n", - " while low <= high:\n", - " mid = (low + high) // 2\n", - " if L[mid] == target:\n", - " return mid\n", - " elif L[mid] < target:\n", - " low = mid + 1\n", - " else:\n", - " high = mid - 1\n", - " return -1" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "9c22866c-b4fc-4228-b0ab-5882d964f5f6", - "metadata": { - "deletable": false, - "nbgrader": { - "cell_type": "code", - "checksum": "5f3471162e0167bb6022ece5eed0a4f7", - "grade": false, - "grade_id": "cell-ea8595a5923fbb0e", - "locked": false, - "schema_version": 3, - "solution": true, - "task": false - }, - "tags": [] - }, - "outputs": [], - "source": [ - "# binary_searche_complexity = ?\n", - "# YOUR CODE HERE\n", - "raise NotImplementedError()" - ] - }, - { - "cell_type": "markdown", - "id": "87b4921b-ef55-4083-b4f1-a3ca5bb7b011", - "metadata": {}, - "source": [ - "### Additional checks (do not change)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6e8f2878-ce5f-4cd8-a5a5-7bce8f655ab8", - "metadata": { - "tags": [] - }, - "outputs": [], - "source": [ - "assert nested_loop_example_complexity in list_complexities\n", - "assert fibonacci_recursive_complexity in list_complexities\n", - "assert binary_searche_complexity in list_complexities" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.9" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/solutions/01-data-structures-complexity-exercises.ipynb b/labs-solutions/01-data-structures-complexity-exercises.ipynb similarity index 83% rename from solutions/01-data-structures-complexity-exercises.ipynb rename to labs-solutions/01-data-structures-complexity-exercises.ipynb index 9efd413610e3c5c73ec68aad10753225da3d07d6..7a597a5fad7156f6e5f10b9e53696c8f6a0eade9 100644 --- a/solutions/01-data-structures-complexity-exercises.ipynb +++ b/labs-solutions/01-data-structures-complexity-exercises.ipynb @@ -798,7 +798,7 @@ }, { "cell_type": "code", - "execution_count": 248, + "execution_count": 276, "id": "0cff0f05-4205-43ae-9a3d-eea4a052faee", "metadata": { "nbgrader": { @@ -828,7 +828,7 @@ }, { "cell_type": "code", - "execution_count": 249, + "execution_count": 277, "id": "a767d813-b0d8-4181-83a8-69ac322812a3", "metadata": { "tags": [] @@ -840,7 +840,7 @@ "(True, (0, 1))" ] }, - "execution_count": 249, + "execution_count": 277, "metadata": {}, "output_type": "execute_result" } @@ -852,7 +852,7 @@ }, { "cell_type": "code", - "execution_count": 250, + "execution_count": 278, "id": "444a52cd-c79e-4c58-962d-e1ce715e19d0", "metadata": { "nbgrader": { @@ -870,17 +870,199 @@ "# Write tests and complexity\n", "### BEGIN SOLUTION\n", "assert two_average([1, 1, 1], 1) == (True, (0, 1))\n", + "### END SOLUTION" + ] + }, + { + "cell_type": "markdown", + "id": "289cea39-c225-47c9-84fc-a526ea979525", + "metadata": {}, + "source": [ + "## Exercise 9\n", "\n", + "Given a positive integer (e.g. `123` of type `int`), return the number of digits it contains (e.g. for `123` the solution is `3`, or for `56` the solution is `2`)." + ] + }, + { + "cell_type": "code", + "execution_count": 281, + "id": "624490e3-3e5c-4b2f-899f-00808f221f21", + "metadata": { + "nbgrader": { + "grade": false, + "grade_id": "cell-e200fed0b8ebe2b1", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write your code here\n", + "### BEGIN SOLUTION\n", + "def number_of_digits(x):\n", + " digits = 1\n", + " while x//10 != 0:\n", + " digits += 1\n", + " x = x//10\n", + " return digits\n", "### END SOLUTION" ] }, { "cell_type": "code", - "execution_count": null, - "id": "d7856b0d-f532-46d1-8ef8-139771b16a99", - "metadata": {}, + "execution_count": 282, + "id": "b5c751f1-7479-4dac-8991-c95e94cf873e", + "metadata": { + "nbgrader": { + "grade": false, + "grade_id": "cell-20f4e37317993d39", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 282, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Example of use\n", + "number_of_digits(123) # 3" + ] + }, + { + "cell_type": "code", + "execution_count": 283, + "id": "e1c89113-e8b1-4940-a46b-203cfa5e2d46", + "metadata": { + "nbgrader": { + "grade": false, + "grade_id": "cell-2ace6e0c3b7b5b36", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, "outputs": [], - "source": [] + "source": [ + "# Write tests and complexity\n", + "### BEGIN SOLUTION\n", + "assert number_of_digits(3) == 1\n", + "### END SOLUTION" + ] + }, + { + "cell_type": "markdown", + "id": "4eea1a02-389b-4b81-8584-e382447e3c8b", + "metadata": { + "tags": [] + }, + "source": [ + "## Exercise 10\n", + "\n", + "_Find the duplicates in a list L._" + ] + }, + { + "cell_type": "code", + "execution_count": 300, + "id": "e9d8e436-3d1e-4621-ac61-2bc721615e16", + "metadata": { + "nbgrader": { + "grade": false, + "grade_id": "cell-e151224f47db9c8b", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write your code here\n", + "### BEGIN SOLUTION\n", + "def find_duplicates(L):\n", + " c = {}\n", + " duplicates = []\n", + " \n", + " for item in L:\n", + " if item in c:\n", + " c[item] += 1\n", + " else:\n", + " c[item] = 1\n", + " \n", + " # Find elements that occur more than once\n", + " for item, count in c.items():\n", + " if count > 1:\n", + " duplicates.append(item)\n", + " \n", + " return duplicates\n", + "### END SOLUTION" + ] + }, + { + "cell_type": "code", + "execution_count": 301, + "id": "1dc59ab4-648a-4c5f-ab63-f208b70e21e7", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[]" + ] + }, + "execution_count": 301, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Example of use\n", + "find_duplicates([1, 2]) # []" + ] + }, + { + "cell_type": "code", + "execution_count": 299, + "id": "394770a0-0548-450e-a0cc-db3f49d648f5", + "metadata": { + "nbgrader": { + "grade": false, + "grade_id": "cell-0317a507de8850f1", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write tests and complexity\n", + "### BEGIN SOLUTION\n", + "assert find_duplicates([1, 2]) == []\n", + "assert find_duplicates([1, 2, 1]) == [1]\n", + "### END SOLUTION" + ] } ], "metadata": { diff --git a/exercises/01-data-structures-complexity-exercises.ipynb b/labs/01-data-structures-complexity-exercises.ipynb similarity index 84% rename from exercises/01-data-structures-complexity-exercises.ipynb rename to labs/01-data-structures-complexity-exercises.ipynb index c317c455d794219f95885a427ec03a2c5db5b0dd..8a626dab580296e3697739835da2056f659a9898 100644 --- a/exercises/01-data-structures-complexity-exercises.ipynb +++ b/labs/01-data-structures-complexity-exercises.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "7f1dc218", + "id": "a263557d", "metadata": {}, "source": [ "NAME:" @@ -778,13 +778,164 @@ "raise NotImplementedError()" ] }, + { + "cell_type": "markdown", + "id": "289cea39-c225-47c9-84fc-a526ea979525", + "metadata": {}, + "source": [ + "## Exercise 9\n", + "\n", + "Given a positive integer (e.g. `123` of type `int`), return the number of digits it contains (e.g. for `123` the solution is `3`, or for `56` the solution is `2`)." + ] + }, { "cell_type": "code", "execution_count": null, - "id": "d7856b0d-f532-46d1-8ef8-139771b16a99", - "metadata": {}, + "id": "624490e3-3e5c-4b2f-899f-00808f221f21", + "metadata": { + "deletable": false, + "nbgrader": { + "cell_type": "code", + "checksum": "55453fc83bd2c986de0dda489b3486e3", + "grade": false, + "grade_id": "cell-e200fed0b8ebe2b1", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write your code here\n", + "# YOUR CODE HERE\n", + "raise NotImplementedError()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b5c751f1-7479-4dac-8991-c95e94cf873e", + "metadata": { + "deletable": false, + "nbgrader": { + "cell_type": "code", + "checksum": "90543087d1b637ae6dd6e55e33741b52", + "grade": false, + "grade_id": "cell-20f4e37317993d39", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# YOUR CODE HERE\n", + "raise NotImplementedError()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e1c89113-e8b1-4940-a46b-203cfa5e2d46", + "metadata": { + "deletable": false, + "nbgrader": { + "cell_type": "code", + "checksum": "2bda07ac948d7cce7aa67753fc1ea514", + "grade": false, + "grade_id": "cell-2ace6e0c3b7b5b36", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write tests and complexity\n", + "# YOUR CODE HERE\n", + "raise NotImplementedError()" + ] + }, + { + "cell_type": "markdown", + "id": "4eea1a02-389b-4b81-8584-e382447e3c8b", + "metadata": { + "tags": [] + }, + "source": [ + "## Exercise 10\n", + "\n", + "_Find the duplicates in a list L._" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e9d8e436-3d1e-4621-ac61-2bc721615e16", + "metadata": { + "deletable": false, + "nbgrader": { + "cell_type": "code", + "checksum": "0b0c4d2d1ec36ead4801af1fee712caf", + "grade": false, + "grade_id": "cell-e151224f47db9c8b", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write your code here\n", + "# YOUR CODE HERE\n", + "raise NotImplementedError()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1dc59ab4-648a-4c5f-ab63-f208b70e21e7", + "metadata": { + "tags": [] + }, "outputs": [], - "source": [] + "source": [ + "# Example of use\n", + "find_duplicates([1, 2]) # []" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "394770a0-0548-450e-a0cc-db3f49d648f5", + "metadata": { + "deletable": false, + "nbgrader": { + "cell_type": "code", + "checksum": "155c3d4e85d43c4fb11851be14064fee", + "grade": false, + "grade_id": "cell-0317a507de8850f1", + "locked": false, + "schema_version": 3, + "solution": true, + "task": false + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# Write tests and complexity\n", + "# YOUR CODE HERE\n", + "raise NotImplementedError()" + ] } ], "metadata": { diff --git a/exercises/02-recursion-exercises.ipynb b/labs/02-recursion-exercises.ipynb similarity index 100% rename from exercises/02-recursion-exercises.ipynb rename to labs/02-recursion-exercises.ipynb diff --git a/notebooks/01-data-structures-complexity.ipynb b/lectures-notebooks/01-data-structures-complexity.ipynb similarity index 100% rename from notebooks/01-data-structures-complexity.ipynb rename to lectures-notebooks/01-data-structures-complexity.ipynb diff --git a/notebooks/02-recursion.ipynb b/lectures-notebooks/02-recursion.ipynb similarity index 100% rename from notebooks/02-recursion.ipynb rename to lectures-notebooks/02-recursion.ipynb diff --git a/notebooks/03-lists-search-sort.ipynb b/lectures-notebooks/03-lists-search-sort.ipynb similarity index 100% rename from notebooks/03-lists-search-sort.ipynb rename to lectures-notebooks/03-lists-search-sort.ipynb diff --git a/notebooks/04-05-06-programming-strategies.ipynb b/lectures-notebooks/04-05-06-programming-strategies.ipynb similarity index 100% rename from notebooks/04-05-06-programming-strategies.ipynb rename to lectures-notebooks/04-05-06-programming-strategies.ipynb diff --git a/notebooks/07-stacks-queues.ipynb b/lectures-notebooks/07-stacks-queues.ipynb similarity index 100% rename from notebooks/07-stacks-queues.ipynb rename to lectures-notebooks/07-stacks-queues.ipynb diff --git a/notebooks/08-binary-trees.ipynb b/lectures-notebooks/08-binary-trees.ipynb similarity index 100% rename from notebooks/08-binary-trees.ipynb rename to lectures-notebooks/08-binary-trees.ipynb diff --git a/notebooks/09-binary-trees-traversals.ipynb b/lectures-notebooks/09-binary-trees-traversals.ipynb similarity index 100% rename from notebooks/09-binary-trees-traversals.ipynb rename to lectures-notebooks/09-binary-trees-traversals.ipynb diff --git a/notebooks/10-trees.ipynb b/lectures-notebooks/10-trees.ipynb similarity index 100% rename from notebooks/10-trees.ipynb rename to lectures-notebooks/10-trees.ipynb diff --git a/notebooks/11-graphs.ipynb b/lectures-notebooks/11-graphs.ipynb similarity index 100% rename from notebooks/11-graphs.ipynb rename to lectures-notebooks/11-graphs.ipynb diff --git a/notebooks/figures/Barnsley_fern_plotted_with_VisSim.png b/lectures-notebooks/figures/Barnsley_fern_plotted_with_VisSim.png similarity index 100% rename from notebooks/figures/Barnsley_fern_plotted_with_VisSim.png rename to lectures-notebooks/figures/Barnsley_fern_plotted_with_VisSim.png diff --git a/notebooks/figures/Logo_ECL.png b/lectures-notebooks/figures/Logo_ECL.png similarity index 100% rename from notebooks/figures/Logo_ECL.png rename to lectures-notebooks/figures/Logo_ECL.png diff --git a/notebooks/figures/Mapreduce.png b/lectures-notebooks/figures/Mapreduce.png similarity index 100% rename from notebooks/figures/Mapreduce.png rename to lectures-notebooks/figures/Mapreduce.png diff --git a/notebooks/figures/a-series-paper-sizes-1.jpg b/lectures-notebooks/figures/a-series-paper-sizes-1.jpg similarity index 100% rename from notebooks/figures/a-series-paper-sizes-1.jpg rename to lectures-notebooks/figures/a-series-paper-sizes-1.jpg diff --git a/notebooks/figures/arbre-largeur-hauteur.png b/lectures-notebooks/figures/arbre-largeur-hauteur.png similarity index 100% rename from notebooks/figures/arbre-largeur-hauteur.png rename to lectures-notebooks/figures/arbre-largeur-hauteur.png diff --git a/notebooks/figures/arbre-tableau.png b/lectures-notebooks/figures/arbre-tableau.png similarity index 100% rename from notebooks/figures/arbre-tableau.png rename to lectures-notebooks/figures/arbre-tableau.png diff --git a/notebooks/figures/bellman-algo.png b/lectures-notebooks/figures/bellman-algo.png similarity index 100% rename from notebooks/figures/bellman-algo.png rename to lectures-notebooks/figures/bellman-algo.png diff --git a/notebooks/figures/bellman-full.png b/lectures-notebooks/figures/bellman-full.png similarity index 100% rename from notebooks/figures/bellman-full.png rename to lectures-notebooks/figures/bellman-full.png diff --git a/notebooks/figures/bellman-solo.png b/lectures-notebooks/figures/bellman-solo.png similarity index 100% rename from notebooks/figures/bellman-solo.png rename to lectures-notebooks/figures/bellman-solo.png diff --git a/notebooks/figures/big-o-chart.png b/lectures-notebooks/figures/big-o-chart.png similarity index 100% rename from notebooks/figures/big-o-chart.png rename to lectures-notebooks/figures/big-o-chart.png diff --git a/notebooks/figures/closest-point.gif b/lectures-notebooks/figures/closest-point.gif similarity index 100% rename from notebooks/figures/closest-point.gif rename to lectures-notebooks/figures/closest-point.gif diff --git a/notebooks/figures/codage-huffman.png b/lectures-notebooks/figures/codage-huffman.png similarity index 100% rename from notebooks/figures/codage-huffman.png rename to lectures-notebooks/figures/codage-huffman.png diff --git a/notebooks/figures/coins-changing.png b/lectures-notebooks/figures/coins-changing.png similarity index 100% rename from notebooks/figures/coins-changing.png rename to lectures-notebooks/figures/coins-changing.png diff --git a/notebooks/figures/complexite-arrays.png b/lectures-notebooks/figures/complexite-arrays.png similarity index 100% rename from notebooks/figures/complexite-arrays.png rename to lectures-notebooks/figures/complexite-arrays.png diff --git a/notebooks/figures/complexite-data-structures.png b/lectures-notebooks/figures/complexite-data-structures.png similarity index 100% rename from notebooks/figures/complexite-data-structures.png rename to lectures-notebooks/figures/complexite-data-structures.png diff --git a/notebooks/figures/dijkstra-algo.png b/lectures-notebooks/figures/dijkstra-algo.png similarity index 100% rename from notebooks/figures/dijkstra-algo.png rename to lectures-notebooks/figures/dijkstra-algo.png diff --git a/notebooks/figures/dijkstra-full.png b/lectures-notebooks/figures/dijkstra-full.png similarity index 100% rename from notebooks/figures/dijkstra-full.png rename to lectures-notebooks/figures/dijkstra-full.png diff --git a/notebooks/figures/execution-recursive.png b/lectures-notebooks/figures/execution-recursive.png similarity index 100% rename from notebooks/figures/execution-recursive.png rename to lectures-notebooks/figures/execution-recursive.png diff --git a/notebooks/figures/fibonacci-tree.png b/lectures-notebooks/figures/fibonacci-tree.png similarity index 100% rename from notebooks/figures/fibonacci-tree.png rename to lectures-notebooks/figures/fibonacci-tree.png diff --git a/notebooks/figures/flowchart.png b/lectures-notebooks/figures/flowchart.png similarity index 100% rename from notebooks/figures/flowchart.png rename to lectures-notebooks/figures/flowchart.png diff --git a/notebooks/figures/hauteur-arbre.png b/lectures-notebooks/figures/hauteur-arbre.png similarity index 100% rename from notebooks/figures/hauteur-arbre.png rename to lectures-notebooks/figures/hauteur-arbre.png diff --git a/notebooks/figures/logo-ecl.png b/lectures-notebooks/figures/logo-ecl.png similarity index 100% rename from notebooks/figures/logo-ecl.png rename to lectures-notebooks/figures/logo-ecl.png diff --git a/notebooks/figures/logo-emlyon.png b/lectures-notebooks/figures/logo-emlyon.png similarity index 100% rename from notebooks/figures/logo-emlyon.png rename to lectures-notebooks/figures/logo-emlyon.png diff --git a/notebooks/figures/placeholder-h.png b/lectures-notebooks/figures/placeholder-h.png similarity index 100% rename from notebooks/figures/placeholder-h.png rename to lectures-notebooks/figures/placeholder-h.png diff --git a/notebooks/figures/placeholder.png b/lectures-notebooks/figures/placeholder.png similarity index 100% rename from notebooks/figures/placeholder.png rename to lectures-notebooks/figures/placeholder.png diff --git a/notebooks/figures/prim-kruskal.png b/lectures-notebooks/figures/prim-kruskal.png similarity index 100% rename from notebooks/figures/prim-kruskal.png rename to lectures-notebooks/figures/prim-kruskal.png diff --git a/notebooks/figures/quicksort.png b/lectures-notebooks/figures/quicksort.png similarity index 100% rename from notebooks/figures/quicksort.png rename to lectures-notebooks/figures/quicksort.png diff --git a/notebooks/figures/recherche-dichotomique.png b/lectures-notebooks/figures/recherche-dichotomique.png similarity index 100% rename from notebooks/figures/recherche-dichotomique.png rename to lectures-notebooks/figures/recherche-dichotomique.png diff --git a/notebooks/figures/rod-cutting-tree.png b/lectures-notebooks/figures/rod-cutting-tree.png similarity index 100% rename from notebooks/figures/rod-cutting-tree.png rename to lectures-notebooks/figures/rod-cutting-tree.png diff --git a/notebooks/figures/rod-cutting.png b/lectures-notebooks/figures/rod-cutting.png similarity index 100% rename from notebooks/figures/rod-cutting.png rename to lectures-notebooks/figures/rod-cutting.png diff --git a/notebooks/figures/spanning-tree-sol-1.png b/lectures-notebooks/figures/spanning-tree-sol-1.png similarity index 100% rename from notebooks/figures/spanning-tree-sol-1.png rename to lectures-notebooks/figures/spanning-tree-sol-1.png diff --git a/notebooks/figures/spanning-tree-sol-2.png b/lectures-notebooks/figures/spanning-tree-sol-2.png similarity index 100% rename from notebooks/figures/spanning-tree-sol-2.png rename to lectures-notebooks/figures/spanning-tree-sol-2.png diff --git a/notebooks/figures/spanning-tree.png b/lectures-notebooks/figures/spanning-tree.png similarity index 100% rename from notebooks/figures/spanning-tree.png rename to lectures-notebooks/figures/spanning-tree.png diff --git a/notebooks/figures/stacks-queues.png b/lectures-notebooks/figures/stacks-queues.png similarity index 100% rename from notebooks/figures/stacks-queues.png rename to lectures-notebooks/figures/stacks-queues.png diff --git a/notebooks/figures/tri-fusion.png b/lectures-notebooks/figures/tri-fusion.png similarity index 100% rename from notebooks/figures/tri-fusion.png rename to lectures-notebooks/figures/tri-fusion.png diff --git a/notebooks/figures/xkcd_fixing_problems.png b/lectures-notebooks/figures/xkcd_fixing_problems.png similarity index 100% rename from notebooks/figures/xkcd_fixing_problems.png rename to lectures-notebooks/figures/xkcd_fixing_problems.png