Skip to main content

Important algorithm of JAVA(Searching and Sorting)

 Java is a versatile programming language, and it can be used to implement a wide range of algorithms. The importance of an algorithm depends on the specific problem you are trying to solve. However, there are several fundamental algorithms and data structures that are commonly used and considered important in computer science and programming. Here are some of them:


1. **Sorting Algorithms:**

   - **QuickSort:** Efficient divide-and-conquer sorting algorithm.

   - **MergeSort:** Another efficient divide-and-conquer sorting algorithm.

   - **HeapSort:** A comparison-based sorting algorithm using a binary heap.

   - **BubbleSort:** Simple but less efficient sorting algorithm.

- **Selection Sort:** 

- **Insertion Sort:** Simple but less efficient sorting algorithm.


2. **Searching Algorithms:**

   - **Binary Search:** Efficient searching in sorted arrays or lists.

   - **Linear Search:** Simple searching technique for unsorted data.


3. **Data Structures:**

   - **Arrays:** Fundamental data structure for storing a collection of elements.

   - **Linked Lists:** Data structure for dynamic storage of elements.

   - **Stacks and Queues:** Useful for managing data access and control flow.

   - **Trees (Binary Trees, Binary Search Trees, AVL Trees, etc.):** Used for hierarchical data representation.

   - **Graphs:** Data structure for modeling relationships and networks.

   - **Hash Tables:** Used for efficient key-value data storage and retrieval.


4. **Dynamic Programming:**

   - **Fibonacci Sequence:** Solving problems using memoization and recursion.

   - **Longest Common Subsequence (LCS):** Used in text comparison, genetics, and more.

   - **Knapsack Problem:** Optimization problem often used in resource allocation.


5. **Graph Algorithms:**

   - **Dijkstra's Algorithm:** Finding the shortest path in weighted graphs.

   - **Breadth-First Search (BFS) and Depth-First Search (DFS):** Traversing graphs and exploring their structure.

   - **Topological Sort:** Ordering vertices in a directed acyclic graph.


6. **Greedy Algorithms:**

   - **Kruskal's Algorithm:** Finding the minimum spanning tree in a graph.

   - **Prim's Algorithm:** Another algorithm for finding minimum spanning trees.


7. **Divide and Conquer:**

   - **Strassen's Matrix Multiplication:** More efficient matrix multiplication.

   - **Closest Pair of Points:** Finding the closest pair of points in a set.


8. **String Matching Algorithms:**

   - **Brute Force:** Simple pattern matching.

   - **Knuth-Morris-Pratt (KMP):** Efficient pattern matching.

   - **Rabin-Karp Algorithm:** String searching using hashing.


9. **Number Theory Algorithms:**

   - **Euclidean Algorithm:** Finding the greatest common divisor (GCD) of two numbers.

   - **Primality Testing (e.g., Miller-Rabin):** Determining if a number is prime.


10. **Dynamic Programming:**

    - **Edit Distance (Levenshtein Distance):** Measuring the difference between two sequences.

    - **Longest Increasing Subsequence (LIS):** Finding the longest subsequence of a given sequence.


These are just some examples of important algorithms and data structures in Java. The choice of algorithm depends on the specific problem you need to solve, and Java provides a versatile platform for implementing and using these algorithms.

Comments

Popular posts from this blog

Polity

  1.    सन 1600 में ईस्ट इंडिया कंपनी भारत आई थी जिसका परमिशन ब्रिटिश की महारानी एलीजाबेथ ने दिया था 2.    परमिशन में चार्टर दिया गया था साथ ही मोनोपोली दी गयी थी अलीजाबेत के द्वारा 3.    बिटिश ईष्ट इंडिया कंपनी भारत शिप से आई थी जिस शिप का नाम था रेड ड्रैगन 4.    भारत में आने के बाद उन्होंने पहली फैक्ट्री 1611 मछलीपटनम में बनाई 5.    दूसरी फैक्ट्री 1612 में सूरत में बनाया था 6.    फैक्ट्री नियन्त्र के लिए तीन प्रेसीडेंसी बनायीं गयी जो थी बॉम्बे, बंगाल, मद्रास 7.    बंगाल का राजा था सिराजुदुल्ला और ब्रिटिश रोबर्ट clive युद्ध किया 1757 ऐसा जिसे battle of plasi कहा गया जिसमें रोबर्ट clive की जीत हुयी 8.    कंपनी का rule 1773 से 1858 तक चला था 9.    ताज का शाशन था 1858 से 1947 10.    Regulating act आया था 1773 में 11.    Act of settlement आया था 1781 में 12.    भारत परिषद् अधिनियम आया था 1861, 1892, 1909 13.    Govt of इंडिया act आया था 1858 में 14.                  ब्रिटिश सरकार ने 1773 में एक regulating act लाया गया जिसमें बंगाल को हेड बनाया गया जिसे गवर्नर जनरल कहा गया बंगा

Linked List Data Structure

Question: How to create without generic Int type Node ? Ans:  public class Node { // this is Node class without Generic int data ; // this is for data like array Element Node next ; //Node ek class hai , usi class ka khud ka variable hai, This is Node(Class) Type variable for //Node is basically refer to class , this is for next element Node ( int data ){ // this is constructor bcse user will pass data value and int because we want to create int type data constructor this . data = data ; // this is refer data next = null ; } }  

Test 2

 Question: You have made a smartphone app and want to set its subscription price such that the profit earned is maximised. There are certain users who will subscribe to your app only if their budget is greater than or equal to your price. You will be provided with a list of size N having budgets of subscribers and you need to return the maximum profit that you can earn. Lets say you decide that price of your app is Rs. x and there are N number of subscribers. So maximum profit you can earn is : m*x Sample input 1: 30 20 53 14 Output 60 import   java . util .*; import   java . util . Scanner ; public   class   solution   {      public   static   int   maximumProfit ( int   budget [])   {      Arrays . sort ( budget );          // int maxProfit = 0;          // // Iterate through each possible subscription price and calculate profit          // for (int i = 0; i < budget.length; i++) {          //     int currentProfit = budget[i] * (budget.length - i);          //     maxProfit = Mat