Algorithm
Algorithm can be defined as a set of steps to accomplish a given task. Its purpose is to make is easier to replicate doing the task again and be efficient and accurate to the same degree. The term ‘Algorithm’ is derived from the name of 9th century Persian sci-entist, astronomer, and mathematician Abdullah Muhammad bin Musa al-Khwarizimi who is also regarded as ‘The father of Algebra’.
Algorithm can be found everywhere in day-to-day life. The primitive form of algorithm began with calculating and at the present time, it is being used in complex study and operation such as artificial intelligence, computer processing, gaming, molecular biology, and various other scientific research areas. It can be as simple as steps to turn on and off a light switch to any mathematical or computational operations. It is used primarily for calculation, data processing, and automated reasoning.The importance of algorithm arises once quality and efficiency are key factors to be considered while accomplishing any tasks. Opposite of following an algorithmic process is performing the same task, each time in different and unique manner. This introduces unreliability, inefficiency and increases time, energy, cost, and many other factors. Thus, use of algorithm helps eliminate these hurdles, brings consistency, efficiency and quality which is visible as the result.
Algorithm is related to function and sometimes they are even used interchangeably but they are still not same. While an algorithm is a set of ideas or an abstract concept that elaborates on how to solve a problem, and functions are the actual implementation of the algorithm which can be used to solve them. Hence, a function can be an implementation of a whole algorithm or a single or multiple steps of an algorithm.
Sorting Algorithms
Sorting is process of arranging set of data in sequenced increasing or descending order based on common properties among the data items. The properties that could be name, price, height, weight, length, efficiency, etc. The primary purpose of sorting any data set is to increase the time efficiency of searching and retrieving the required item from it. Sorting is common in the things we interact or use in our daily life, yet it is often unno-ticed. Language Dictionary, Telephone directories, point table in any sport, posts in so-cial medias, waste sorting, etc. are few examples of sorting in action in daily life. Sorting used in these mentioned things helps us retrieve details like word in the dictionary, tele-phone number by the name, point of our favorite team, recycling, etc. faster and easier.
As describe in the section above describing details about Algorithm, it is desirable to use an algorithm to perform task for efficiency, consistency, and quality of result. Similar is true for sorting, hence, there are algorithms for sorting which are referred to as Sorting Algorithms. There are numerous sorting algorithms, each are implemented with different approach and logic. They have varying efficiency and are better suited for cases with different data distribution. They can be classified into multiple categories based on sort-ing techniques, few of the techniques are listed below:
- Comparison/Non-comparison-based sorting: A sorting is comparison-based sorting if the elements are compared with each other to find the sorted array otherwise, it is non-comparison based sorting.
- In-place/Out-place sorting: A sorting is in-place sorting if it does not use extra memory to sort the array otherwise, it is out-place sorting.
- Online/Offline sorting: A sorting is online sorting if it allows new data while the sorting process is ongoing and regardless yield the result otherwise, it is offline sorting.
- Stable/Unstable sorting: A sorting is stable sorting if it does not change the order of place of element with same value otherwise, it is unstable sorting.
Here is a list of different sorting algorithms containing information about the techniques of sorting used in them. These are few of the most common sorting.
| Sorting algorithm | Devleoper | Comparison based | In-place | Online | Stable |
|---|---|---|---|---|---|
| Merge Sort | John von Neumann | Yes | No | No | Yes |
| Quick Sort | Sir C.A.R. Hoare | Yes | Yes | No | No |
| Bubble Sort | N/A | Yes | Yes | No | Yes |
| Insertion Sort | Sir C.A.R. Hoare | Yes | Yes | Yes | Yes |
| Heap Sort | J. W. J. Williams | Yes | Yes | No | No |
Visualization
Visualization is a visual representation of an idea, story, data, etc. On a simplified note, to put a visual clue to describe an information is also Visualization. It is not necessary that the visualized information or entity is a real-life or physical object, it can an abstract idea such as feelings, concept, imagination or just a belief. Letters, numbers, statues, symbols, arts such as paintings, sketches, murals, digital graphics, movies, etc. are means of visualization that are used to convey an idea of information. Any information that is visualized pleasingly and informatively has greater potential of communicating the core message much easier and faster.
Visualization has been a part of human history from early prehistoric period. The oldest piece of prehistoric art ever discovered is a rock carving named ‘Bhimbetka and Dara-ki-Chattan Cupules’ located in central India. It is reported to date back around 290-70,000 BC. Likewise, one of the recently discovered artifacts includes the oldest known cave painting discovered in Sulawesi, Indonesia which dates back at least 37,900 BC. Furthermore, there are uncountable ancient monuments and archeological sites scat-tered throughout the globe which represents ancient civilization, historical events, cul-ture, and human cognitive capability of certain period. Through these artifacts they vis-ualize the animals, flora-faunas, environment, human feelings, and human lifestyle prev-alent in the respective region during the period where they belonged to. They are of great importance to study of the human history and evolution.

In the present days, there are large quantity of information and data with higher level of complexity. The information must be delivered as efficiently as possible with reliability and even more accuracy. It has given rise modern visualization in the form of data vis-ualization for research, study, business, etc. Entertainment contents such as movies, videos, video games, etc. Books, magazines, advertisements, etc. All competing to be more visually pleasing and informative than other. Visualization is not a new form of conveying messages; it has existed since the dawn of the human history. Along the way, it has evolved into numerous forms and means but at its core it serves the same purpose. Thus, visualization is of great importance and will remain so, for upcoming days.