algorithm; It is the name given to the combination of methods and steps planned to accomplish a task or solve a problem. It is defined as a set of operations with a clearly defined beginning and end, generally used in the field of programming or in solving mathematical problems. It is the regular determination of the movements, operations or studies needed to carry out the planned work in steps.
It is one of the two approaches used in problem solving and is more preferred than the intuitive solution approach. One computer programmer It is among the subjects that must be learned before a programming language and can be defined as the most important topic of programming.
This concept first appeared in the 9th century and was first introduced by Khwarezmiis. The scholar, whose full name is Abu Abdullah Muhammad Ibn Musa al-Khwarizmi, made great contributions to the field of mathematics by putting his studies in the field of algebra into writing. Harezmi’s most well-known book in the world and with Latin translations; Hisab is al-algebra ve al-mukabala (حساب الجبر و المقابلة). This book is also known as first algorithm collection It is defined as .
The word algorithm originates from ‘algorithmIt comes from the word ‘. The reason for this is that Harezmi’s book was difficult to pronounce in Europe after being translated into Latin, and Europeans who could not pronounce Harezmi’s name called it ‘Algorism’.
As a result, although the concept of Algorism started to be used in the sense of solving problems with Arabic numbers, over time it transformed into its current form and began to be used in a general context. Finally, after the 1950s, especially with the developments in computer technologies, a concept that represents the way of doing almost every job in the field of programming and the steps to be applied for its construction came.
The algorithm is in plain text and narrative form or flow diagram It may be in the form. Generally preferred is the one in the form of a flow diagram. In order to create a process, some symbols are used to describe the work to be done. These symbols are of great importance, especially in terms of developing a program and understanding the process.
In order to create an algorithm, the task or problem to be done must first be clearly determined and solution methods must be determined. In order for the work to be done or the solution to be implemented, all steps that will lead to the result, starting from the initial movement, should be specified in the order of implementation. One of the most important concepts in this subject is the flow chart; A schematic representation of the solution of an algorithm is called a flowchart.
Some flowchart commands are as follows;
- Start-Finish (finisher)
- repetitive process
- Manually entered value
Example 1 (Explanation with everyday concepts)
Targeted Business: go to school from home
Adım 1: Kapıyı aç Adım 2: Ayakkabıyı giy Adım 3: Kapıyı kapat Adım 4: Binadan çık Adım 5: Yoldan yürü Adım 6: 2. Yol ayrıma kadar yürü Adım 7: Sola dön Adım 8: Yolu bitir Adım 9: Okula gir.
Example 2 (Explanation with programmatic concepts)
Targeted Business: Finding the factorial value of a number entered by the user
Beginning: Start of the program
Finish: Showing the result
Adım 1: Programı çalıştır Adım 2: factorial,i ve n değişkenlerini tanımla Adım 3: Değişkenlerin başlangıç değerlerini tanımla factorial = 1 i = Adım 4: Ekrandan girilen n değerini oku Adım 5: (i=n) eşitliği sağlanana kadar tekrarla factorial = factorial*i i = i+1 Adım 6: Factorial değişkeninin değerini göster
Some Important Types of Algorithms
- Search algorithms
- Memory management algorithms
- Computer graphics algorithms
- Combinatorial algorithms
- Graph algorithms
- Evolutionary algorithms
- genetic algorithms
- Crypto algorithms or cryptographic algorithms
- Root finding algorithms
- Optimization algorithms
- Sorting algorithms
- Data compression algorithms
What are the Usage Areas of Algorithms?
Algorithms are methods used to achieve a specific goal on a data set. For example, data mining algorithms are used to find meaningful information or hidden patterns in data sets. Machine learning algorithms learn models using data sets and are used to apply these models to subsequent data sets. For example, a machine learning algorithm can learn a classification model using a dataset, apply that model to subsequent datasets, and predict which class new data points belong to. Besides this, algorithms can also be used in various fields such as:
- image processing: Algorithms are used to process images and determine their properties. For example, an image processing algorithm can identify faces in a photograph and determine the hair color of those faces.
- Social network analysis: Algorithms are used to analyze social network data and identify various trends. For example, a social network analysis algorithm can measure a user’s popularity by examining their circle of friends.
- data compression: Algorithms are used to store data in a smaller form. For example, a data compression algorithm can be used to reduce an image to a smaller file size.
- Sort and search: Algorithms are used to find specific data points in data sets. For example, a search algorithm might search for a word in a data set and list the data points containing that word.
This concept can generally be encountered by people in all areas of life. Because the concept of algorithm represents the path to solution rather than the solution. A plan prepared for a desired journey and the steps determined to complete a task basically represent the algorithm.
However, an algorithm that has not been implemented and whose results have not been observed is not deemed suitable for patent by law. However, the algorithms in the software have been the subject of much debate at this point.