![Laat in zijn kantoor werken](/f/632b89fda171e20b3953fd75e7e6595e.jpg)
Afbeelding tegoed: vgajic/E+/GettyImages
Het bedenken van nieuwe algoritmen kan intimiderend lijken voor nieuwe programmeurs, maar het is een vaardigheid die als elke andere kan worden geoefend. Begin met het zoeken naar een boek met algoritmeproblemen voor beginners of door een online of offline informaticales te volgen. Oefen met het beheersen van de basisprincipes van het ontwerpen van algoritmen, inclusief het inschatten van complexiteit en runtime, controleren voor randgevallen die problemen kunnen veroorzaken voor een computeralgoritme, en het opsplitsen van problemen in kleinere onderdelen.
Wat een computeralgoritme is
Een algoritme is een procedure die een computer of een mens volgt om een probleem op te lossen. Staartdeling is een voorbeeldalgoritme dat veel mensen op school leren. Het Euclidische algoritme, dat wordt gebruikt om de grootste gemene deler van twee getallen te vinden, is een ander bekend voorbeeld.
Video van de dag
Een computeralgoritme wordt uiteindelijk geschreven in een programmeertaal die de computer kan begrijpen, maar wanneer het algoritme wordt ontwikkeld, schrijven programmeurs en computerwetenschappers het vaak eerst informeel als proza en dan meer formeel in een generiek formaat genaamd pseudocode.
Pseudocode lijkt op een programmeertaal, maar omdat het is ontworpen om door mensen te worden gelezen in plaats van door computers, heeft het geen strikte syntactische regels.
Eenvoudige algoritmevoorbeelden voor beginners
Beroemde voorbeelden van algoritmen worden vaak geleerd aan beginnende computerwetenschappers en programmeurs. Enkele voorbeelden zijn Dijkstra's algoritme, dat in de grafentheorie wordt gebruikt om het kortste pad tussen twee punten te vinden; Samenvoegen Sorteren, dat wordt gebruikt om lijsten met gegevens te sorteren; en het RSA-algoritme dat wordt gebruikt om gegevens te versleutelen. Veel hiervan zijn online beschikbaar in gratis studieboeken, video's en cursusmateriaal.
De online leersite Khan Academy heeft veel voorbeelden van algoritmen waarmee beginners kunnen experimenteren. Grote universiteiten zoals Harvard, Stanford en het Massachusetts Institute of Technology maken curriculaire materialen en cursusvideo's met gemeenschappelijke algoritmen die online beschikbaar zijn voor inleidende informatica klassen.
Er zijn ook sites met problemen met programmeerwedstrijden en uitleg over hoe ze worden opgelost, wat mensen kan helpen die geïnteresseerd zijn in het ontwikkelen van hun vaardigheden.
Overwegingen bij het algoritme
Als je een nieuw algoritme bedenkt, wil je er zeker van zijn dat het werkt in alle gevallen waarin je denkt dat het zou moeten en proberen te begrijpen hoe efficiënt het is. Doorgaans verdelen programmeurs het algoritme in afzonderlijke delen, zodat ze kunnen nadenken over hoe elk deel werkt en hoe lang het duurt. Dit wordt modulair ontwerpen genoemd.
Het is een goed idee om zelf een algoritme te testen met pen en papier in enkele eenvoudige gevallen voordat u begint met het schrijven van code. Als u aan efficiëntie denkt, denk dan aan het gemiddelde geval, veelvoorkomende situaties die uw algoritme waarschijnlijk zal tegenkomen en de runtime in het slechtste geval. De runtime in het slechtste geval wordt vaak weergegeven met de zogenaamde Big-O-notatie.