Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Full Transcript

Mariano, Jomel D. January 23, 2024 SBIT-3D Assignment #1 Introduction to Algorithm Algorithms are important in computer science because they help...

Mariano, Jomel D. January 23, 2024 SBIT-3D Assignment #1 Introduction to Algorithm Algorithms are important in computer science because they help with programming and software development. They serve as the foundation for developing and implementing effective solutions to a variety of computational issues. Algorithms can be as simple as sorting a list of numbers or as complicated as machine learning and optimization.  Sorting Algorithm  Searching Algorithm  Pathfinding Algorithm  Encryption Algorithm Sorting algorithms place elements in a particular order. QuickSort, for example, is a divide-and-conquer algorithm that chooses a 'pivot' element and divides the other elements into two sub-arrays based on whether they are less or greater than the pivot. The procedure is then applied recursively to the sub-arrays. Binary Search is an algorithm for determining the position of a target value within a sorted array. It compares the target value to the array's center member and then eliminates half of the remaining elements based on the result. This method is repeated until the target is discovered or the search space is depleted. The Dijkstra's Algorithm is used to determine the shortest path between nodes in a graph. It begins at a source node and explores the adjacent nodes, updating the distance to each node. It repeats this process until it has visited all nodes and discovered the shortest routes to all reachable nodes. AES is a symmetric encryption method extensively used to protect sensitive data. It operates on fixed-size blocks of data and uses a key to conduct encryption and decryption. AES has several key lengths (128, 192, or 256 bits) and uses multiple rounds of transformation to improve security. Sorting:  Problem: Arrange a collection of elements in a specific order (e.g., ascending or descending).  Example Algorithm: QuickSort, MergeSort, Bubble Sort. Pathfinding:  Problem: Determine the optimal path between two points in a graph or network.  Example Algorithm: Dijkstra's Algorithm, A* Algorithm. Numerical Problems:  Problem: Solve mathematical problems or perform numerical computations.  Example Algorithms: Newton's Method for root finding, Euclidean Algorithm for finding the greatest common divisor. Searching:  Problem: Find the position of a particular element in a collection.  Example Algorithm: Binary Search, Linear Search. Graph Problems:  Problem: Analyze or traverse graphs, representing relationships between entities.  Example Algorithms: Depth-First Search (DFS), Breadth-First Search (BFS). String Matching:  Problem: Locate occurrences of a particular pattern within a string.  Example Algorithm: Knuth-Morris-Pratt (KMP) Algorithm. Cryptography:  Problem: Securely encode and decode information.  Example Algorithm: Advanced Encryption Standard (AES), RSA algorithm. Machine Learning and Pattern Recognition:  Problem: Train models to recognize patterns and make predictions.  Example Algorithms: Support Vector Machines (SVM), Neural Networks, k- Nearest Neighbors.

Use Quizgecko on...
Browser
Browser