Le cours est composé de trois grandes parties: dans la première
partie, on présente des rappels sur la programmation en C++ sans les
aspects « programmation orientée objets », ainsi que sur
l'environnement de développement (programmation séparée, notion de
bibliothèque logicielle, modèle mémoire, ...). La deuxième partie
présente les types abstraits de base (piles, files, ...) et les
étudiants sont amenés à les ré-implémenter pour comprendre les
mécanismes mis en jeu et s'approprier les connaissances acquises dans
le langage C++. Dans la troisième partie, les algorithmes de
résolution de problèmes (algorithmes gloutons, branch-and-bound,
...) sont présentés et les étudiants doivent les implémenter
pour résoudre des problèmes typiques de ceux rencontrés en
bio-informatique. L'accent est mis sur la complexité des algorithmes
en temps et en espace afin que les étudiants puissent faire un choix
éclairé lorsqu'ils seront amenés à résoudre des problèmes difficiles
de grandes tailles.
(Crédit photo: Timodenk)
partie, on présente des rappels sur la programmation en C++ sans les
aspects « programmation orientée objets », ainsi que sur
l'environnement de développement (programmation séparée, notion de
bibliothèque logicielle, modèle mémoire, ...). La deuxième partie
présente les types abstraits de base (piles, files, ...) et les
étudiants sont amenés à les ré-implémenter pour comprendre les
mécanismes mis en jeu et s'approprier les connaissances acquises dans
le langage C++. Dans la troisième partie, les algorithmes de
résolution de problèmes (algorithmes gloutons, branch-and-bound,
...) sont présentés et les étudiants doivent les implémenter
pour résoudre des problèmes typiques de ceux rencontrés en
bio-informatique. L'accent est mis sur la complexité des algorithmes
en temps et en espace afin que les étudiants puissent faire un choix
éclairé lorsqu'ils seront amenés à résoudre des problèmes difficiles
de grandes tailles.
(Crédit photo: Timodenk)