Skip to main content

Time Complexity

What is time complexity ?
Ans:
Time complexity not a run time of a code, its totally depends on system configuration, processor, server , input size will increase time complexity.


Time complexity ko likhne ke tarike jo hote hai use notation kehte hai.

Notation is basically symbol



NOTATION OF COMPLEXITY

Best Case:
kam se kam time me chla gya code best case hota hai

Ω (Omega) Ω(1) se likhte hai

Average Case: Ek average time jisme code chle 

Θ(n+1)/2

Worst Case: Worst case ka mtlb kuch bhi ho jaye is time ko ye exceed nhi kregea

O(n)


Nested Loop me Time Complexity multiply hoti hai aur n^2 banti hai
Wahi Do different loops me N+M hoti hai jisme jiski sabse bdi value hai wo big of O me jati hai

  1. O(1) - Constant Time:

    • Operations that take a constant amount of time, regardless of the size of the input data.
  2. O(log n) - Logarithmic Time:

    • Algorithms that have a logarithmic time complexity, often seen in binary search or certain tree-based algorithms. This is best time Complexity this is near from constant time
  3. O(n) - Linear Time:

    • The running time of the algorithm grows linearly with the size of the input.
  4. O(n log n) - Linearithmic Time:

    • Common in efficient sorting algorithms like mergesort and heapsort. or already inbuild sorting method like Array.sort
  5. O(n^2) - Quadratic Time:

    • Algorithms where the running time is proportional to the square of the size of the input.
  6. O(2^n) - Exponential Time:

    • Algorithms where the running time doubles with each additional element in the input. this is on recursion , This is generally brute force approach and this is bad time Complexity, to improve this will use dynammic programming technique
  7. O(n!) - Factorial Time:

    • Algorithms where the running time grows factorially with the size of the input. this is worst of all, ye sabse bura hota hai







Sabse least logn hota hai


     >>>   time complexity of all searching and sorting algorithm


    1) Sabse chota hota hai logn

    2) uske bad n logn

    3) n

    4) n2




Time complexity wise algorithm -

1) O(log n)
>> 1- binary search will gives you big of O log n notation.
About Binary Search: Binary Search is used to efficiently find a target value within a sorted array or list by repeatedly dividing the search interval in half. It is a divide-and-conquer algorithm that compares the target value with the middle element of the array and determines whether the target lies in the first half or the second half of the array. By eliminating half of the remaining elements at each step, Binary Search achieves a time complexity of O(log n).
1

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