19-1-skku-oss / 2019-1-OSS-E4

2019 05 07
https://19-1-skku-oss.github.io/2019-1-OSS-E4/
3 stars 0 forks source link

About Project

Out Project is 'C Language Algorithm Library' Look at what we've done!

What is Algorithm?

An algorithm is a detailed series of instructions for carrying out an operation or solving a problem. In a non-technical approach, we use algorithms in everyday tasks, such as a recipe to bake a cake or a do-it-yourself handbook.

Technically, computers use algorithms to list the detailed instructions for carrying out an operation. For example, to compute an employee’s paycheck, the computer uses an algorithm. To accomplish this task, appropriate data must be entered into the system. In terms of efficiency, various algorithms are able to accomplish operations or problem solving easily and quickly.

You can see the algorithm what you want in our 'C Language Algorithm Library'

Importance of Our Project (the philosophy of the establishment of the C Algorithm Library)

The importance of algorithms does not end with this. The main purpose of our project is to better understand the algorithms that form the backbone of programming. For all programming, the category 'efficiency' must be important. Algorithm changes are essential in order to manage the system faster, more convenient and more efficient in a market where countless people are jumping into programming. The C Library we have now created is now a small library, but it is sure to continue to develop. Better algorithms (i.e. more efficient algorithms), more books in the C Library, and our programming will change more efficiently.

Algorithm Type

Simple Client Server

It represents a distributed application architecture and network architecture that separates tasks between the service requestor client and the server that is the provider of the service resource. Web systems are also classified as extended 'client server systems' but are generally referred to as client server systems, which are installed on user PCs and processed screens before the web system is released, and the server processes data.

Data Structure

Data structure means the organization, management, and storage of data that enables efficient access and modification in computer science.More precisely, a data structure means a collection of data values, and relationships between data, and functions or commands that can be applied to the data. The carefully chosen data structure enables the use of more efficient algorithms. The choice of these data structures often begins with the choice of abstract data types. An effectively designed data structure allows computations to be performed with minimal use of resources, such as run time or memory capacity.

Conversions

Hash

The hash function is a function that maps data of any length to data of a fixed length. The value obtained by the hash function is called hash value, hash code, hash checksum, or simply hash. One of its uses is used in a data structure called a hash table and is widely used in computer software for very fast data retrieval. The hash function can speed up database searches or table searches because it can find duplicate records in large files.

MISC

Project Eular

Euler Project is a website designed to solve math problems with computer programs. The project was created to create interest in math and computer programming. In May 2009, the project involved more than 250 different difficulty problems.

Searching

Searching Algorithms are designed to check for an element or retrieve an element from any data structure where it is stored. Based on the type of search operation, these algorithms are generally classified into two categories:

  1. Sequential Search: In this, the list or array is traversed sequentially and every element is checked. For example: Linear Search.

  2. Interval Search: These algorithms are specifically designed for searching in sorted data-structures. These type of searching algorithms are much more efficient than Linear Search as they repeatedly target the center of the search structure and divide the search space in half. For Example: Binary Search.

    Sorting

    Sorting algorithms are algorithms that list elements in a certain order, such as numerical order or dictionary order. Efficient alignment is important for optimizing other algorithms (which work correctly on a aligned list), such as navigation or merge algorithms. Alignment algorithms are also often useful in normalizing data or generating meaningful results. The results of this algorithm must meet the following two conditions:

  3. Output is non-falling (an order in which each element is not smaller than the previous element in the whole sequence).

  4. Output is the sequence created by rearranging inputs.


About our Team

Members