Video: De Voorspelbare Mens 1: Wat is een algoritme? 2024
Algoritmen zijn allemaal gericht op het vinden van oplossingen en hoe sneller en gemakkelijker, hoe beter. Hoewel mensen algoritmen al duizenden jaren handmatig hebben opgelost, kan dit enorme hoeveelheden tijd kosten en veel numerieke berekeningen vereisen, afhankelijk van de complexiteit van het probleem dat u wilt oplossen.
Er bestaat een enorme kloof tussen wiskundige algoritmen die historisch zijn gemaakt door genieën van hun tijd, zoals Euclides, Newton of Gauss, en moderne algoritmen die zijn gemaakt in universiteiten, evenals particuliere onderzoeks- en ontwikkelingslaboratoria. De belangrijkste reden voor deze kloof is het gebruik van computers.
Computers gebruiken om problemen op te lossen met behulp van het juiste algoritme versnelt de taak aanzienlijk, wat de reden is dat de ontwikkeling van nieuwe algoritmen zo snel is gegaan sinds het verschijnen van krachtige computersystemen. In feite is het je misschien al opgevallen dat steeds meer oplossingen voor problemen tegenwoordig snel verschijnen, gedeeltelijk omdat computerkracht zowel goedkoop is als constant toeneemt. Gezien hun vermogen om problemen met behulp van algoritmen op te lossen, worden computers (soms in de vorm van speciale hardware) alomtegenwoordig.
Bij het werken met algoritmen, beschouw je de inputs, gewenste outputs en het proces (een reeks acties) die worden gebruikt om een gewenste output van een bepaalde input te verkrijgen. U kunt echter de terminologie verkeerd bekijken en de algoritmen op de verkeerde manier bekijken, omdat u niet echt hebt nagedacht over hoe ze in een echte omgeving werken. Het derde deel van het hoofdstuk bespreekt algoritmen op een echte manier, dat wil zeggen door de terminologieën te gebruiken die worden gebruikt om algoritmen te begrijpen en om algoritmen te presenteren op een manier die aantoont dat de realiteit vaak minder dan perfect is. Inzicht in hoe een algoritme op een realistische manier moet worden beschreven, maakt het ook mogelijk om verwachtingen te temperen om de realiteit weer te geven van wat een algoritme daadwerkelijk kan doen.
Sommige algoritmen die u gebruikt, vereisen gegevensinvoer in een specifieke vorm, wat soms betekent dat de gegevens moeten worden aangepast aan de vereisten van het algoritme. Gegevensmanipulatie verandert de inhoud van de gegevens niet. Wat het wel doet, is de presentatie en de vorm van de gegevens veranderen, zodat een algoritme u kan helpen nieuwe patronen te zien die niet eerder zichtbaar waren (maar in de hele tijd daadwerkelijk in de gegevens aanwezig waren).
Raadpleeg de volgende definities voor termen die mensen vaak verwarren met algoritmen (maar dat niet zijn):
- Vergelijking: Getallen en symbolen die, als ze als geheel worden beschouwd, gelijk zijn aan een specifieke waarde.Een vergelijking bevat altijd een gelijkteken, zodat u weet dat de cijfers en symbolen de specifieke waarde aan de andere kant van het gelijkteken vertegenwoordigen. Vergelijkingen bevatten over het algemeen variabele informatie gepresenteerd als een symbool, maar ze zijn niet verplicht om variabelen te gebruiken.
- Formule: Een combinatie van cijfers en symbolen die worden gebruikt om informatie of ideeën uit te drukken. Formules bevatten normaal gesproken wiskundige of logische concepten, zoals het definiëren van de grootste gemene deler (GCD) van twee gehele getallen (deze video vertelt hoe dit werkt). Over het algemeen tonen ze de relatie tussen twee of meer variabelen. De meeste mensen zien een formule als een speciaal soort vergelijking.
• Algoritme: Een reeks stappen die is gebruikt om een probleem op te lossen. De sequentie biedt een unieke methode om een probleem aan te pakken door een bepaalde oplossing te bieden. Een algoritme hoeft geen wiskundige of logische concepten te vertegenwoordigen, ook al vallen de presentaties in dit boek vaak in die categorie omdat mensen op deze manier meestal algoritmen gebruiken. Sommige speciale formules zijn ook algoritmen, zoals de kwadratische formule. Een proces kan alleen een algoritme vertegenwoordigen als dit
- Eindig: is. Het algoritme moet het probleem uiteindelijk oplossen. In dit boek worden problemen met een bekende oplossing besproken, zodat u kunt evalueren of een algoritme het probleem op de juiste manier oplost.
- Goed gedefinieerd: De reeks stappen moet nauwkeurig zijn en de huidige stappen zijn begrijpelijk. Vooral omdat computers betrokken zijn bij het gebruik van algoritmen, moet de computer in staat zijn de stappen te begrijpen om een bruikbaar algoritme te maken.
- Effectief: Een algoritme moet alle problemen oplossen waarvoor iemand het heeft gedefinieerd. Een algoritme moet altijd het probleem oplossen dat het moet oplossen. Hoewel u op een aantal fouten moet anticiperen, is de incidentie van falen zeldzaam en treedt deze alleen op in situaties die acceptabel zijn voor het beoogde gebruik van het algoritme.