Calculating Time Complexity for Algorithms: Understanding and Solving Problems

  • Thread starter Thread starter EvLer
  • Start date Start date
  • Tags Tags
    Complexity
Click For Summary

Homework Help Overview

The discussion revolves around understanding time complexity for algorithms, specifically how to calculate the running time for different input sizes based on given complexities such as linear, n log n, n², and n³. Participants are exploring mathematical relationships and reasoning behind these calculations.

Discussion Character

  • Exploratory, Mathematical reasoning, Problem interpretation

Approaches and Questions Raised

  • Participants discuss how to relate time complexity to input size, with attempts to derive formulas based on provided examples. Questions arise regarding specific calculations and the reasoning behind them, particularly in the context of cubic relationships and logarithmic complexities.

Discussion Status

Some participants have made progress in understanding the first type of problem but express confusion over the second type, particularly regarding the calculations for cubic time complexity. Guidance has been offered on specific errors in reasoning, and there is an ongoing exploration of how to handle logarithmic complexities, indicating a productive dialogue.

Contextual Notes

Participants are working within the constraints of homework rules, seeking clarification and deeper understanding without direct solutions. There is an emphasis on mathematical reasoning and the need for accurate calculations in the context of time complexity.

EvLer
Messages
454
Reaction score
0
Hello, I am trying to understand how to solve problems relating to time complexity of algorithms, esp. problems of the following kind:

An algorithm takes 0.5 ms for input size 100. How long will it take
for input size 500 if the running time is the following:
linear, nlogn, n^2, N^3

An algorithm takes 0.5 ms for input size 100. How large a problem
can be solved in 1 min if the running time is the following:
linear, nlogn, n^2, n^3

I think I have a general idea of what is asked but cannot figure out how to find it mathematically. Could someone be kind enough to explain it step by step?
Appreciate your help.
 
Physics news on Phys.org
If t varies as f(n) then
[tex]\frac {t}{t_0} = \frac {f(n)}{f(n_0)}}[/tex]
 
Thanks a lot, I think I got the first problem type, but I still have trouble with the second. Here is how I reasoned for O(n^3):
0.5/60*10^3 = 100^3/n^3, and then I solve for n^3 and take cube root but do not come up with the right answer. What am I doing wrong?
Thanks in advance.
 
It looks like you didn't cube the 60 on the left hand side.
 
Why do I need to cube 60?
1 min = 60*10^3(ms), it's time.
t0/t = n0^3/n^3 hence
0.5/60*10^3 = 100^3/n^3. Is that wrong? Could you then explain how this works?
Thanks again.
 
Oops! Sorry - I wasn't thinking - that was wrong.

What you did looks okay.
 
How do I solve the case where O(nlog(base 2)n)? I know I can represent it in a different way: 2^(number/n) = n, or I can change bases where n*ln(n) = number*ln2, but how do I solve this?
Thanks for help.
 
Last edited:
The log problem is different from the others because you can't write a simple solution for it. You will have to resort to obtaining a numerical estimate. For example, you could use successive approximations which means you find a value of N which is too small and one that is too large then pick a point in between and see if that's too large or small. Adjust your range appropriately and repeat until you have the desired accuracy.
 

Similar threads

  • · Replies 10 ·
Replies
10
Views
3K
  • · Replies 8 ·
Replies
8
Views
2K
  • · Replies 2 ·
Replies
2
Views
1K
  • · Replies 7 ·
Replies
7
Views
2K
Replies
8
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 9 ·
Replies
9
Views
3K