<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Algorithmics :: Computer science</title>
    <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/index.html</link>
    <description>Presentation &amp; objectives Welcome to the part of the course on algorithmics!&#xA;In this block, you will study how to solve problems using algorithmic solutions, i.e., series of operations that, when applied, compute a solution to the problem, pretty much like following a cooking recipee to make a cake.&#xA;In addition to writing algorithms, we will also study some properties of algorithms, such as complexity or termination. Indeed, it is important to be able to characterize these properties, either to be able to compare algorithms together (e.g, to determine which one to choose for a specific task), or to guarantee they will act as expected.</description>
    <generator>Hugo</generator>
    <language>en</language>
    <atom:link href="https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Basics of algorithmics</title>
      <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session1/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session1/index.html</guid>
      <description>Duration1h15 Presentation &amp; objectives The objective of this session is to introduce the basic concepts of algorithmics. It is a mandatory first step to students discovering these fields, and also a useful reminder for the others to ensure we all use the same terminology. In particular, we will study fundamental algorithmic statements (loops, conditionals), and also the concepts of constants and variables.&#xA;At the end of the session, you should know how to write a simple algorithm to solve a given problem, using all the elements listed above.</description>
    </item>
    <item>
      <title>Recursion</title>
      <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session2/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session2/index.html</guid>
      <description>Duration2h30 Presentation &amp; objectives To solve a problem of a given size, it may be necessary to solve subproblems of smaller sizes, and then to aggregate the intermediate results to get the final result. Recursive algorithms do just that, by describing the operations to perform on a small part of data, before going to the next part through self-call.&#xA;In this session you will study situations, often characterised by the nature of the data structures, where algorithmic solutions are naturally expressed in a recursive way.</description>
    </item>
    <item>
      <title>Data structures</title>
      <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session3/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session3/index.html</guid>
      <description>Duration2h30 Presentation &amp; objectives Software are often a matter of data management. In addition to basic data types studied during the programming session 1 that allow to store one value only, more complex data structures will be manipulated in this session. Different strategies to store and manipulate data will be discussed, especially in terms of data management operations and computation cost. A data structure is defined through the operations it provides. One generally distinguishes between query (search, is empty) and modification operations (insert, delete, etc.).</description>
    </item>
    <item>
      <title>Properties of algorithms</title>
      <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session4/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session4/index.html</guid>
      <description>Duration2h30 Presentation &amp; objectives You are certainly not the first developer to face your current problem. It certainly means that several solutions to solve it have already been envisioned.&#xA;How to compare them and to select the most appropriate one? This is the central question addressed in this session. You will acquire theoretical and technical skills to judge the adequacy between a problem and a possible algorithmic solutions. To do so, you will study theoretical algorithmic properties (specification, termination, deterministic/stochastic).</description>
    </item>
    <item>
      <title>Advanced algorithmics</title>
      <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session5/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session5/index.html</guid>
      <description>Duration2h30 Presentation &amp; objectives Many problems can be solved in an algorithmic way. After several decades of searching for efficient algorithmic solutions, some families of techniques have emerged. New problems are usually nothing more than special cases of old and well-known problems.&#xA;This session will introduce you to a number of existing algorithmic strategies together with the problem solving situations where they apply. You will discover the following techniques: divide and conquer, memoization, dynamic programming, and greedy approaches.</description>
    </item>
    <item>
      <title>Artificial intelligence</title>
      <link>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session6/index.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://info.cours.lecalvar.fr/CM1_reseaux/s5/algo/session6/index.html</guid>
      <description>Duration2h30 Presentation &amp; objectives In the previous session about advanced algorithmics, you have studied algorithms that can be defined to efficiently solve a wide range of problems, given that those problems can be formalized (e.g., represented as a problem on a graph).&#xA;In this session, we will give you a general introduction about a successful, alternative way to solve problems, using machine learning. Contrary to previously seen approaches, we will rely on data to solve problems, not only on programming instructions.</description>
    </item>
  </channel>
</rss>