10 mathematische Konzepte für Programmierer – KDnuggets

10 mathematische Konzepte für Programmierer – KDnuggets

Quellknoten: 2874651

10 mathematische Konzepte für Programmierer
Bild vom Autor
 

Da die Nachfrage nach Programmierern steigt, wird das Angebot natürlich auf jeden Tag mehr Menschen treffen, die in die Branche eintreten. Allerdings handelt es sich um eine wettbewerbsintensive Branche. Um sich kontinuierlich zu verbessern, Ihre Fähigkeiten zu erweitern und Ihr Gehalt zu erhöhen, müssen Sie nachweisen, dass Sie ein kompetenter Programmierer sind. Eine Möglichkeit, dies zu erreichen, besteht darin, Dinge zu lernen, die Menschen normalerweise nicht wissen. 

Viele Leute steigen in die Programmierbranche ein und gehen davon aus, dass man die Mathematik dahinter nicht kennen muss. Obwohl dies in gewisser Weise zutrifft, werden Sie zu einem kompetenteren Programmierer, wenn Sie das logische mathematische Konzept hinter der Programmierung verstehen. 

Wie ist das? Indem Sie verstehen, was Sie tun und was passiert. So geht das.

Also lasst uns gleich loslegen. Was sind die 10 besten mathematischen Konzepte für Programmierer?

Die Boolesche Algebra geht auf die Algebra zurück. Ich denke, das war offensichtlich. Wenn Sie Programmierer sind oder einer werden möchten, wissen Sie wahrscheinlich bereits, was Boolean ist. Wenn nicht, werde ich es schnell definieren. 

Boolean ist ein Datentyp/eine binäre Variable, die einen der beiden möglichen Werte hat, zum Beispiel 0 (falsch) oder 1 (wahr). Der boolesche Datentyp basiert auf der booleschen Algebra, in der die Werte der Variablen als Wahrheitswerte wahr und falsch bezeichnet werden. Bei der Arbeit mit der Booleschen Algebra können Sie drei Operatoren verwenden: 

  • Konjunktion oder UND-Verknüpfung
  • Disjunktion oder ODER-Verknüpfung
  • Negation oder Nicht-Operation

Diese können visuell als Venn-Diagramme dargestellt werden, um Ihnen ein besseres Verständnis der Ausgabe zu ermöglichen. Die Boolesche Algebra besteht aus 6 Gesetzen:

  • Kommutativgesetz
  • Assoziatives Recht
  • Verteilungsrecht
  • UND Gesetz
  • ODER Gesetz
  • Inversionsgesetz

Computer verstehen Zahlen und brauchen deshalb ein Zahlensystem. Ein Zahlensystem ist ein Schriftsystem, mit dem Zahlen ausgedrückt werden. Beispielsweise gibt es diese vier häufigsten Zahlensystemtypen:

  1. Dezimalzahlensystem (Basis-10)
  2. Binäres Zahlensystem (Basis-2)
  3. Oktalzahlensystem (Basis-8)
  4. Hexadezimales Zahlensystem (Basis-16)

Computer arbeiten mit einem Zahlensystem zur Basis 2, wobei die möglichen Ziffern 0 und 1 sind. Base64 wird auch zum Codieren von Binärdaten in einem String-Format verwendet.

Weitere Informationen zum Erlernen von Zahlen finden Sie unter Gleitkommazahlen. Ein Gleitkomma ist ein variabler Datentyp, der reelle Zahlen als Näherung darstellt. Eine Gleitkommazahl ist eine Zahl, bei der sich die Position des Dezimalpunkts bewegen oder „schweben“ kann, anstatt an einer festen Position zu sein. Dadurch können Entwickler einen Kompromiss zwischen Reichweite und Präzision eingehen.

Aber warum eine Annäherung? Computer verfügen nur über eine begrenzte Menge an Speicherplatz, entweder 32 Bit (einfache Genauigkeit) oder 64 Bit (doppelte Genauigkeit). 64 Bit ist die Standardeinstellung für Programmiersprachen wie Python und JavaScript. Beispiele für Gleitkommazahlen sind 1.29, 87.565 und 9038724.2. Es kann entweder eine positive oder negative ganze Zahl mit Dezimalpunkt sein. 

Auch als Log bezeichnet, handelt es sich um ein mathematisches Konzept, das zur Beantwortung der Frage die Umkehrung von Exponentialzahlen verwendet. Warum sind Logarithmen für Programmierer wichtig? Weil sie komplexe mathematische Berechnungen vereinfachen. Beispielsweise kann 1000 = 10^4 auch als 4 = log101000 geschrieben werden.

Die Basiszahl ist ein mathematisches Objekt, das mit sich selbst multipliziert werden muss. Der Exponent ist eine Zahl, die angibt, wie oft eine Basiszahl mit sich selbst multipliziert werden muss. Daher ist ein Logarithmus ein Exponent, der angibt, mit welcher Potenz eine Basis erhöht werden muss, um eine bestimmte Zahl zu ergeben.

Wenn das Protokoll die Basis 2 verwendet, handelt es sich um einen binären Logarithmus, und wenn es die Basis 10 verwendet, handelt es sich um einen dekadischen Logarithmus. 

Eine Menge ist eine ungeordnete, eindeutige Sammlung von Werten, die in keiner Beziehung zueinander stehen müssen. Sie können nur eindeutige Elemente enthalten und dürfen dasselbe Element nicht zweimal oder öfter enthalten.

Beispielsweise enthalten Excel-Dateien oder eine Datenbank Tabellen mit einer Reihe eindeutiger Zeilen. Dies ist eine Art diskrete Mathematik, da diese Strukturen eine endliche Anzahl von Elementen haben können. Das Ziel der Mengenlehre besteht darin, die Wertesammlungen und die Beziehungen untereinander zu verstehen. Dies wird typischerweise von Datenanalysten, SQL-Experten und Datenwissenschaftlern verwendet. 

Sie können dies tun, indem Sie Folgendes verwenden:

  • Innerer Join oder Schnittpunkt – Gibt eine Menge zurück, die Elemente enthält, die in beiden Mengen vorhanden sind
  • Äußerer Join oder Union – Gibt Elemente aus beiden Mengen zurück
  • Union all – Dasselbe wie der Outer-Join-Operator, aber er enthält alle Duplikate.
  • Außer oder Minus – A Minus B ist eine Menge, die Elemente aus der Menge A enthält, die keine Elemente der Menge B sind 

Kombinatorik ist die Kunst, Dinge zu zählen, um Ergebnisse zu erhalten und bestimmte Eigenschaften endlicher Strukturen anhand von Mustern zu verstehen. Beim Programmieren geht es vor allem um das Lösen von Problemen, und die Kombinatorik ist die Art und Weise, wie wir Objekte anordnen können, um diese endlichen diskreten Strukturen zu untersuchen.

Die kombinatorische Formel ist eine Kombination aus Permutation und Kombination.

  • Permutation ist der Vorgang, bei dem eine Menge in eine bestimmte Reihenfolge oder Reihenfolge gebracht wird
  • Kombination ist die Auswahl von Werten der Menge, bei der die Reihenfolge nicht berücksichtigt wird.

Wie Sie bereits wissen, ist ein Diagramm eine visuelle Darstellung einer Reihe von Werten, und diese Werte können miteinander verbunden werden. Wenn es um Daten geht, sind diese Werte durch Variablen verbunden – in der Graphentheorie werden sie als Verknüpfungen bezeichnet. 

Die Graphentheorie ist die Untersuchung von Graphen bezüglich der Beziehung zwischen Kanten und Eckpunkten verbundener Punktmengen. Dadurch können wir eine paarweise Beziehung zwischen Objekten erstellen, indem wir die Scheitelpunkte, auch Knoten genannt, verwenden, die durch die Kanten, die sogenannten Linien, verbunden sind. Ein Graph wird als Paar G(V, E) dargestellt, wobei V die endlichen Eckpunkte und E die endlichen Kanten darstellt.

Unter Komplexitätstheorie versteht man die Untersuchung der Zeit und des Speichers, die ein Algorithmus als Funktion der Eingabegröße benötigt, um ausgeführt zu werden. Es gibt zwei Arten von Komplexität:

  • Platzkomplexität – die Menge an Speicher, die ein Algorithmus zum Ausführen benötigt.
  • Zeitkomplexität – die Zeit, die ein Algorithmus zur Ausführung benötigt.

Immer mehr Menschen machen sich Sorgen über die zeitliche Komplexität, da wir den Speicher eines Algorithmus wiederverwenden können. Wenn es um Zeitkomplexität geht, lässt sich diese am besten messen, indem man die Anzahl der Operationen berücksichtigt, die der Algorithmus ausführt. Algorithmen werden mithilfe von If-Anweisungen und Schleifen erstellt. Um den Zeitaufwand zu reduzieren, sollten Sie daher Code verwenden, der möglichst wenige If-Anweisungen und Schleifen enthält.

Die Komplexitätstheorie für Algorithmen verwendet die Big-O-Notation, um das Grenzverhalten eines Algorithmus zu beschreiben und besser zu verstehen. Es wird verwendet, um Algorithmen danach zu klassifizieren, wie sie auf Änderungen der Eingabegröße reagieren.

Ahhh Statistiken. Wenn Sie sich mit künstlicher Intelligenz befassen möchten, müssen Sie sich mit Statistik auskennen. KI und maschinelles Lernen sind schöne Namen für Statistiken. Statistische Programmierung wird zur Lösung datenintensiver Probleme wie ChatGPT verwendet. Die Antwort von ChatGPT basiert ausschließlich auf der Wahrscheinlichkeit, mit der vom Benutzer bereitgestellten Eingabeaufforderung übereinzustimmen. 

Wenn es um statistische Programmierung geht, müssen Sie mehr als Mittelwert, Median und Modus lernen. Sie müssen etwas über Bias, Kovarianz und das Bayes-Theorem lernen. Als Programmierer werden Ihnen Aufgaben gestellt und Sie werden sich fragen, ob es sich um ein lineares Regressionsproblem oder ein logistisches Regressionsproblem handelt. Wenn Sie den Unterschied zwischen den beiden verstehen, können Sie leichter erkennen, welche Art von Aufgabe Sie vor sich haben. 

Möglicherweise haben Sie sich in der Schule mit linearer Algebra befasst – oder auch nicht. Die lineare Algebra ist sehr wichtig und wird häufig in der Computergrafik und im Deep Learning eingesetzt. Um die lineare Algebra zu verstehen, müssen Sie diese drei Wörter verstehen:

  • Skalar – ein einzelner numerischer Wert
  • Vektor – eine Liste von Zahlen oder ein eindimensionales Array
  • Matrix – ein Gitter oder ein zweidimensionales Array

Vektoren können Punkte und die Richtung in einem 3D-Raum darstellen, während Matrizen Transformationen darstellen können, die an diesen Vektoren stattfinden. 

Dieser Artikel bietet Ihnen einen kurzen Überblick über die zehn wichtigsten mathematischen Konzepte, die Ihre Programmierkarriere verbessern werden. Das Erlernen der Feinheiten wird nicht nur Ihre täglichen Aufgaben reibungsloser und verständlicher machen, sondern Sie können Ihrem Arbeitgeber auch Ihr Potenzial vor Augen führen. 

Wenn Sie auf der Suche nach einem KOSTENLOSEN Buch sind, das Ihnen weiterhilft, schauen Sie sich Folgendes an: Mathematik für maschinelles Lernen: Das kostenlose eBook
 
 
Nisha Arya ist Data Scientist, freiberuflicher technischer Redakteur und Community Manager bei KDnuggets. Sie ist besonders daran interessiert, Data Science Karriereberatung oder Tutorials und theoriebasiertes Wissen rund um Data Science anzubieten. Sie möchte auch die verschiedenen Möglichkeiten untersuchen, wie künstliche Intelligenz der Langlebigkeit des menschlichen Lebens zugute kommt/kann. Eine begeisterte Lernende, die ihr technisches Wissen und ihre Schreibfähigkeiten erweitern möchte, während sie anderen hilft, sie zu führen.
 

Zeitstempel:

Mehr von KDnuggets