Ich habe eine Weile mit dem Codieren geübt, aber das Problem ist, dass ich viel Zeit brauche, um eine Lösung für die Probleme zu schreiben. Ich möchte fragen, ob wettbewerbsfähiges Programmieren mir dabei helfen kann, dies zu verbessern.
Wenn ja, wie soll ich anfangen und von welchen Websites aus (wie TopCoder )? Ich werde offensichtlich nicht in der Lage sein, sehr schwierige Probleme zu lösen. Was soll ich machen?
Wenn nein, was soll ich sonst noch tun?
Ich habe auch ein anderes Problem, das ich lernen möchte, aber die Sache ist, dass ich das Gefühl habe, dass ich nicht sehr gut darin bin. Was soll ich machen? Es ist, als würde man mich von innen nerven.
Ich weiß, dass manche Leute diese Frage vielleicht nicht informativ finden, aber bitte erlauben Sie mir zumindest, eine Antwort zu bekommen.
quelle
Antworten:
Ja, es kann, und wenn genügend Zeit vorhanden ist, wird es dies mit Sicherheit tun. Geschwindigkeit ist jedoch nicht die wichtigste Fähigkeit, die Sie verbessern werden. Aufgrund meiner mehr als 10-jährigen Erfahrung mit TopCoder ist die wichtigste Fähigkeit, die Sie aus der Wettbewerbsprogrammierung ziehen werden, die Fähigkeit, einfache Code-Snippets beim ersten Mal korrekt zu schreiben, ohne einen Debugger zu verwenden.
Verwenden Sie Übungsräume für Division 2. Level 1 von Div 2 sind in der Regel "Tippwettbewerbe" in dem Sinne, dass Sie eine Lösung sofort finden, damit Ihre Aufgabe sie so schnell wie möglich codiert. Die meisten Aufgaben im wirklichen Leben sind so. Sie werden schnell erkennen, dass der Debugger den größten "Zeitaufwand" darstellt. Sie werden also natürlich versuchen, Ihren Code zu vervollständigen, ohne ihn zu debuggen. Dies wird anfangs frustrierend sein, sich aber mit der Zeit verbessern. Es wird ein paar hundert Level-1-Probleme brauchen, um gut darin zu werden, also gib nicht auf.
Das Debuggen in Ihrem Kopf ist die Fähigkeit, die Ihnen bei Ihrer eigentlichen Arbeit helfen wird: Während die Codierungsgeschwindigkeit nicht wichtig ist, hilft Ihnen die Fähigkeit, korrekte Codeausschnitte ohne Debuggen zu schreiben, beim Übergang von gut zu hervorragend.
quelle
Als Anfänger sollten Sie sich mehr mit der Qualität Ihres Codes als mit der Geschwindigkeit des Schreibens befassen. Sie sollten selbst an Projekten arbeiten, um Ihre Fähigkeiten zu erweitern. Anschließend können Sie Open-Source-Projekte überprüfen, um festzustellen, wie andere Code schreiben, und möglicherweise einen Beitrag zu einem Open-Source-Projekt leisten.
In mehr als 25 Jahren der Entwicklung von Code auf verschiedenen Plattformen und Geschäftsdomänen habe ich noch nie einen Fall gefunden, in dem die Geschwindigkeit des Codeschreibens wichtiger war als die Qualität und Stabilität meines Codes.
quelle