Oft habe ich mich gefragt: Was nützen Lernalgorithmen?
Als Student an der School of Software habe ich C-Sprache, C++, Datenstrukturen und Algorithmen gelernt. Ich bin der Meinung, dass Algorithmen hier am wenigsten nützlich sind nach der Arbeit. In den meisten Fällen besteht während des Arbeitsprozesses keine Notwendigkeit, einen Algorithmus zu entwerfen oder einen sehr beeindruckenden Algorithmus in der Einführung in Algorithmen anzuwenden. Es handelt sich eher um eine Möglichkeit, ein Modul abzuschließen und zwei Module zu integrieren, hauptsächlich Entwurfsmuster und Standpunkte B. objektorientiert, spielen eine große Rolle, und Algorithmen müssen einfache Datenstrukturen haben und erfordern möglicherweise überhaupt keine Algorithmen, was in JAVA eher ein Modulerstellungsprozess ist .
Es gibt einige großartige Leute rund um ACM, die zu den Top Ten bei POJ gehören, aber wenn es um die Arbeit geht, scheinen seine Algorithmenfähigkeiten für seine Arbeit keine große Hilfe zu sein. Er schreibt einfach jeden Tag etwas in JAVA und testet und behebt dann einige Fehler. Dabei geht es überhaupt nicht um DP, Gier oder Graphentheorie. Solange die Funktion realisiert ist, spielt es keine Rolle, was Sie verwenden. Diese Art des Denkens sollte existieren. Nicht jeder kann zu einer Forschungseinrichtung wie dem Microsoft Asia Research Institute gehen, das hohe Anforderungen an Algorithmen stellt. Wenn Sie zu einem gewöhnlichen Unternehmen gehen, können Sie dies im Grunde tun, solange Sie die Sprache sprechen, einige Technologien verstehen und Projekte durchgeführt haben Wenn Sie die Anforderungen für das Interview erfüllen, werden Sie möglicherweise nicht aufgefordert, sofort einen DP-Algorithmus zu schreiben oder eine ACM-Frage zu stellen, um über Ihre Ideen zu sprechen. Das F&E-Team braucht eigentlich keine Algorithmen, geschweige denn das Testteam.
Was nützen dann Lernalgorithmen? Tatsächlich ist diese Frage dem Nutzen des Mathematiklernens sehr ähnlich. Nach der Arbeit ist es selten, dass jemand in der Lage ist, ein Integral zu berechnen, einen Grenzwert zu finden oder sogar ein System quadratischer Gleichungen einer Variablen zu lösen. Im Gespräch mit einem Senior, der seit einem Jahr arbeitet, sagte er, dass Datenstruktur, Designmuster, Betriebssysteme und Englisch sehr wichtig seien. Was Algorithmen angeht, erwähnte er sie überhaupt nicht, und natürlich erwähnte er sie nicht Infinitesimalrechnung.
Ich denke, wenn wir nach dem Konzept der Mathematik denken, die den Menschen das Denken beibringt, gilt das Gleiche auch für Algorithmen, die im Wesentlichen Mathematik sind. Beispielsweise gibt es in der kombinatorischen Mathematik viele Algorithmen, ebenso wie in der diskreten Mathematik. Oftmals wird dieses Wissen nicht genutzt. Selbst wenn man es nutzt, kann man es durch Nachschlagen in einem Buch nachlesen und gerät dann schnell wieder in Vergessenheit. Um ein durchschnittlicher Programmierer zu werden, müssen Sie nicht viele Algorithmen lernen. Nur diejenigen, die entschlossen sind, hervorragende Programmierer zu werden, sollten einige Algorithmen lernen, die ihrem eigenen Denken und der Verbesserung ihrer Fähigkeiten zugute kommen. Vielleicht kann in einer Gruppe von Programmierern jeder Muster entwerfen und sich mit C++/JAVA auskennen, aber wenn Sie sich mit Algorithmen auskennen, werden Sie es auf jeden Fall besser können. Auch wenn Sie es nicht verwenden können, ist es Ihr Gewicht. Du weißt mehr als andere und kannst es nicht tun.
Das obige ist der detaillierte Inhalt vonWarum Algorithmen studieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!