Cours d'algo / Comment trouver la logique ?

Bonsoir,
Je poste car je souhaite participer à ProLogin. Étant conscient de la limite de mes connaissances en algorithme/programmation, je n'y vais pas dans l'optique d'une victoire mais tout simplement pour rencontrer des gens passionnés d'informatique et pour améliorer mes connaissances dans ce domaine.

J'aimerais cependant pouvoir faire du mieux que je peux et je m'entraine donc aux annales de DF présents sur le site.
C'est là qu'intervient mes deux questions :
-Auriez-vous des sites contenant des cours d'algo traitant de choses un peu plus poussés (donc ça exclut les bases comme les conditions, boucles) ? En fait, j'ai fait beauucouup de recherche sur Google, et les sites sont pas très fournis. Ça parle de conditions/tableaux/boucles/variables. En gros ce que je connais déjà.. Je serais plus intéressé par des sites qui proposent des algo plus "puissants".
Par exemple, j'y connaissais rien au tri et j'ai lu ça à un moment sur le forum, je m'y suis donc mis et fait des recherches dessus et je suis en train d'assimiler ça peu à peu.
En gros, que faut-il connaitre de plus et d'intéressant pour des exos tels que ceux de Prologin ?
(En fait étant en BTS 1ere année, j'apprends plus en autodidacte qu'en cours)

-Ensuite, cette question rejoint un peu la première. Dû à mon manque de connaissance, je n'arrive pas à dépasser les niveaux de difficulté "4". Est-ce faisable qu'avec des boucles/conditions ? Il y a-t-il une certaine logique à adopter ?

Pour faire très bref, je recherche des conseils pour "comment s'améliorer" ! (même si c'est en pratiquant évidemment ! :) )

Merci d'avance

Salut, bonne mentalité que de venir pour apprendre :)
Au-delà d'un site je te conseille le livre "Introduction to algorithms" (http://mitpress.mit.edu/algorithms/), il en existe aussi une version française (mais il me semble qu'elle est un peu différente).

Sinon, une bonne méthode est aussi de chercher ponctuellement des informations un peu partout sur internet quand tu recherche un exercice (genre stack overflow, la doc de ton langage, le forum, IRC etc), les exercices de France-ioi sont bien aussi pour apprendre.

Bonne chance pour la suite :).

Maitrises-tu le concept de récursion ? Si non, tu peux commencer par là (par exemple avec ce cours : http://recursivite.developpez.com)
Pour vérifier que tu as bien compris, essaie cet exercice : http://www.prologin.org/training/challenge/demi2004/gabuzomeu

Ensuite, tu auras peut-être besoin d'un certain nombre de structures de données : piles, files, tables de hachage et éventuellement les arbres et les graphes. Renseigne-toi sur comment ça marche et comment ça s'appelle dans ton langage préféré (conseil : évite le C).

Enfin, apprends comment faire un parcours de graphe (parcours en largeur, parcours en profondeur), c'est utile pour faire une recherche de plus court chemin. Et renseigne-toi sur la programmation dynamique !

Ensuite, réessaie les exercices de Prologin et demande de l'aide si tu es bloqué.

C'est exactement le genre d'infos que je voulais ! :)
Merci beaucoup.

En ayant des noms sur quelque chose, je peux effectuer des recherches dessus et m'améliorer parce que quand on cherche de l'algo en général, c'est vague !
Merci beaucoup à vous deux.

Oui j'ai entendu parler de la récursivité, je m'y suis mis (en même temps que le tri) et ça m'a pas l'air trop compliqué (après dire que je maitrise, ça serait aller un peu loin)

Je programme en C# et un peu en python (mais j'avoue, majoritairement en C#).

Encore merci pour toutes ces infos.
J'ai du travail qui m'attend du coup :)

Bon week end a vous (si vous l'êtes :o )

Répondre au sujet

Vous devez vous enregistrer ou vous connecter pour poster des messages.