Question

Pendant le sous-traitant, j'ai senti que mon éducation était principalement composée d'appliquer la théorie existante aux problèmes du monde réel (c.-à-d. Design d'algorithme / analyse).J'ai vu des dérivations de nombreux algorithmes et preuves de leur complexité, mais je suis souvent laissé gênée par la question de la façon dont on vient découvrir un algorithme.Il semble intimidant d'imaginer à développer un nouvel algorithme compte tenu de l'ingéniosité impliquée dans la création d'une approche efficace.Je me demande s'il y a des moyens de former cette ingéniosité.

Ma question est que je peux cultiver les compétences nécessaires pour développer des approches originales en matière de problèmes quantitatifs?Y a-t-il des ressources qui se concentrent sur ces compétences?

Était-ce utile?

La solution

Il semble que la programmation concurrentielle pourrait vous aider. Ou juste la partie "programmation" de celui-ci. Si vous voulez manifester vos compétences en résolution de problèmes (et donc votre capacité à proposer des idées originales), il semble que la résolution de problèmes concurrentiels soit la voie à suivre, car elles sont en conception ciblant cette compétence.

Vous auriez besoin de deux types de ressources: Archives à problèmes et matériaux théoriques.

Pour les archives de problèmes, je peux vous suggérer d'essayer

  • Timus.Online (problèmes nécessitant des idées intelligentes / observations commencent après ~ 270 Difficulté)
  • codeforces.org (onglet de problèmes, plus riche de problèmes, mais la qualité globale est quelque peu inférieure à celle du timus )
  • Onlinejudge.org (à Uhunt il y a une table avec des problèmes qui couvrent une grande variété de problèmes; un supplément pour le Réservez la programmation compétitive 3)
  • uRionlineJudge.com.br (a de grands problèmes)

Aussi, il y a atcoder.co.jp , qui est comme des coolforces mais cible principalement des problèmes liés aux mathématiques.

La clé pour trouver des idées originales est de savoir ce que les gens ont déjà marché. Si vous comprenez ces idées et que vous pouvez les appliquer relativement facilement, vous pouvez trouver une idée intelligente en combinant ces idées plus anciennes de manière intelligente et b) vous pouvez rechercher des idées fondamentalement nouvelles beaucoup plus efficacement parce que vous savez ce qui n'est pas une nouvelle idée et quelle n'est pas la nouvelle façon de penser à trouver de nouvelles idées.

Si vous êtes d'accord avec le paragraphe précédent, vous aurez besoin de ressources dans lesquelles vous pourrez apprendre de nouveaux concepts et idées. La clé avec ceci est de comprendre non seulement le théorème ou l'algorithme, mais également pour comprendre l'intuition et la (les) preuves (s) également. Les preuves donnent une idée explicite sur la façon de trouver et de savoir comment s'assurer que l'idée fonctionne. Comprendre les astuces et les algorithmes (de pensée) utilisés dans les preuves est la clé de proposer vos propres idées.

L'intuition, d'autre part, est une perspicacité implicite, c'est quelque chose qui relie les problèmes, ses preuves (ou un sous-ensemble de preuves) et le sujet du problème en général. Je dis cela afin que vous ne pensais pas que l'intuition est quelque chose de magique ou que si vous ne l'avez pas obtenu lorsque vous lisez une preuve, vous ne l'auriez pas du tout. Pour l'acquérir, vous devez effectuer ces étapes

D'accord, donc. Avec cela, vous pourrez saisir efficacement les anciennes idées, comprendre l'intuition et l'ingénieur

y derrière eux. Ce sont des ressources plausibles (bien que, je pense que vous pourriez déjà les utiliser):

  1. Introduction aux algorithmes. Cormen
  2. geekforgeeks.com
  3. wikipedia.com (sérieusement, ils ont de grands articles sur certains algorithmes)
  4. VisualGo.net (surtout, si vous êtes un apprenant visuel;)
  5. De mon expérience à ce stade, vous pourrez venir avec des idées originales par vous-même et naturellement. Vous serez capable de voir les connexions entre les idées clairement et ils commenceront à simplement faire tomber dans votre tête. La résolution des problèmes subira les chemins de neurones dans votre cerveau et vous n'oublierez pas la base théorique et l'intuition que vous avez construites. Les problèmes de résolution construiront également de nouvelles connexions neurales et apporteront la joie lors de la découverte de nouvelles perspectives.

    Enfin, je tiens à dire que si votre perspicacité n'est rien que vous avez appris auparavant, alors il a de la valeur. Si vous combinez deux idées ensemble, même si c'était simple, vous aurez une nouvelle idée et cela aura de la valeur. Chaque fois que vous proposez de telles idées, dans tous les cas, vous créez quelque chose de précieux. Si votre objectif serait de trouver quelque chose de précieux, vous réussirez à chaque fois. Si votre objectif serait de proposer une "perspicacité originale", vous serez alors rapidement démotivé, car peu importe ce que vous ferez, vous échouerez probablement (au début à coup sûr). En fin de compte, si vous suivez ces étapes ou quelque chose de similaire, vous ne pouvez pas vous empêcher! Sûrement, quelque peu dans le futur, chaque dixième de vos idées sera vraiment originale;)

Licencié sous: CC-BY-SA avec attribution
Non affilié à cs.stackexchange
scroll top