Chaque fois que le sujet de la programmation à faire, la plupart des gens comptent sur les instincts de base, suivre quelques étapes pour résoudre résoudre efficacement les problèmes. Que ce soit des sujets volontaires ou non, lors de la programmation ne vous inconsciemment suivre quelques étapes, après avoir lu cet article, vous pouvez utiliser ces étapes et ce lien de l'article, afin que vous puissiez plus résoudre efficacement des problèmes.
Par conséquent, dans cet article, je parlerai des cinq étapes de problèmes de programmation.
Auteur | Madhav Bahl
Traducteur | ménisque
Zebian | Tu Min
Produit | RPSC (ID: CSDNNews)
Qu'est-ce que ce monde a besoin est un développeur, pourquoi devrais-je passer du temps sur le concours de programmation il?
Je me est de développer, mais je trouve que la plupart des développeurs (dont de nombreux « très » Les développeurs ont la capacité) pas trop bon à des structures de données, des algorithmes et des problèmes communs. Malheureusement, beaucoup de gens tout simplement de développer en suivant quelques étapes de base de l'application, ou faire un logiciel très simple, puis se faire appeler « programmeurs ».
Ce temps tout le monde peut être programmé de telle sorte que l'étude approfondie des structures de données et algorithmes d'aujourd'hui ne sont plus le premier choix des étudiants, même ces domaines devraient attacher une grande importance à ces étudiants.
Même moi, en tant que développeur, n'a pas participé à trop de concours de programmation, mais je vais essayer de passer plus de temps sur des algorithmes et des structures de données, apprendre à écrire du code efficace, et de recommander et d'encourager toutes les personnes concernées à ce sujet aspects.
Voici quelques exemples, montrent le contenu des structures, des algorithmes et des concours de programmation données (sens général) peut aider les élèves:
« Programmation vous apprendre comment faire face à un gros problème. » - Jack Dorsey
Maintenant, pour les entreprises.
Cinq étapes pour faire problème de programmation
Il y a quelques jours tout en faisant un problème de programmation, je trouve que je suivrais un modèle fixe lors de la résolution des problèmes. Je fis quelques questions et notez les étapes avant et après la résolution de mon esprit. J'ai été surpris de constater que même vraiment il y a un modèle, je ne sais même pas que j'ai passé cinq étapes, mais avec ces cinq étapes, je serai en mesure de résoudre efficacement des problèmes plus de.
Comme je l'ai déjà dit, il est probable que vous inconsciemment utiliser ces étapes, mais si vous additionnez et utilisation consciente, vous trouverez une différence incroyable.
1. Comprendre et analyser les problèmes
Lisez les questions, commencer à penser sur le titre, l'état, si possible vers le bas d'écriture sur le papier et vous devez trouver étant donné les conditions.
Demandez-vous quelques questions:
- Je peux bien comprendre le sujet?
- Donnez des non-professionnels pour expliquer le problème?
- Combien d'entrées, chacun est quoi?
- Ce qui a amené chaque sortie est l'entrée?
- Le titre de la décomposition de plusieurs modules il?
- Que ce soit dispose d'informations suffisantes? Sinon, essayez encore et encore à comprendre le sujet.
2. Lisez l'entrée exemple
Lire un exemple d'entrée et essayer de trouver des entrées plus d'exemples, afin de vous aider à mieux comprendre le problème, et donc vous voulez faire vos besoins de code pour connaître le nombre de cas traités, ce que la production possible ou la plage de sortie oui.
Ici, je recommande:
- Choisissez une entrée très simple et sortie pour savoir
- Choisissez une entrée plus complexe, plus grande et voir ce que la sortie est le nombre de cas d'utilisation nécessité
Puis commencer à des conditions aux limites:
- Ce qui ne fournit pas d'entrée, de sortie doit être
- Fournir entrée illégale, la production devrait être ce qui est
3. Titre de décomposition
Pour de gros problèmes pour cette étape est très, très utile. Dans ce cas, je suggère les étapes suivantes:
- Essayez un organigramme peint ou UML
- Le problème en modules ou sous-problèmes
- Essayez d'établir une fonction distincte pour chaque sous-problème
- Ou au besoin pour appeler les questions de l'enfant (probablement une fonction appelle une autre fonction), pour les connecter
- Si les vrais problèmes du monde (tels que les systèmes de gestion, etc.), essayer d'atteindre les classes et les objets
4. Démarrer le code d'écriture et de résolution de problèmes
Maintenant, le titre a terminé l'analyse, peut vraiment écrire du code. Si vous ne pouvez pas remplir une solution unique, il peut donner simple écriture partielle du code, le problème de la profondeur de résolution, vous trouverez progressivement plus de détails et pour trouver plus d'idées.
Rappelez-vous ces trois points, il sera en mesure de trouver la solution:
- Votre point de départ
- Vous êtes ici
- votre objectif
Et, si vous êtes dans l'interview, ne perdez pas de temps pour résoudre tout le sujet, puis dit à l'enquêteur, devrait continuer à simplifier le problème, continuer à dire à l'enquêteur votre solution au problème.
- Dites à l'intervieweur vous où commencer
- Dites-lui ce que vous pensez de la méthode
- Trouvez la partie la plus difficile de votre visage en question
- Parfois, vous pouvez ignorer le « plus dur » partie, à partir de sous-problèmes simples, cela vous donnera plus de temps pour penser à l'ancienne
- Après l'enfant à résoudre des problèmes simples, essayez de résoudre la partie difficile de la même manière
- Vous pouvez trouver une meilleure façon lorsque la résolution de problèmes, de dire à l'enquêteur
5. Examen et apprendre
Cette partie est la plus importante! Après l'achèvement de la résolution de problèmes, nous devons regarder en arrière: Code pourrait améliorer? Y at-il une autre façon de résoudre les problèmes?
Ne pas renoncer à faire! De cette façon, vous découvrez est de renoncer à la possibilité d'une autre solution, mais aussi donné l'occasion d'explorer pleinement le problème!
Ce qui suit est écrit après le code devrait se poser la question suivante:
En plus de ces questions, mais aussi vérifier les réponses des autres personnes au même sujet et voir ce que les autres sont terminés, le processus, vous apprendrez beaucoup.
résumé
Cet article décrit les cinq étapes suivantes:
Au-dessus, j'espère que cet article peut améliorer vos compétences en résolution de problèmes.
Original: https: //hackernoon.com/how-to-approach-any-coding-problem-9230f3ad6f9
Cet article a été traduit RPSC, Pour réimprimer, s'il vous plaît indiquer la source de la source.