Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Time complexity 如何找到以下代码段的时间复杂度_Time Complexity_Big O - Fatal编程技术网

Time complexity 如何找到以下代码段的时间复杂度

Time complexity 如何找到以下代码段的时间复杂度,time-complexity,big-o,Time Complexity,Big O,以下代码段的时间复杂度是多少,以及如何计算 function(int n){ for(int i = 1 ; i<=n ; i++){ for(int j=1 ; j<=n; j+=i){ System.out.println("*"); } } 函数(int n){ 对于(int i=1;i让我们考虑一下完成的总功。正如您在评论中所指出的,当i=1时,内部循环运行n次,当i=2时,运

以下代码段的时间复杂度是多少,以及如何计算

 function(int n){
        for(int i = 1 ; i<=n ; i++){
            for(int j=1 ; j<=n; j+=i){
                System.out.println("*");
        }
    }
函数(int n){

对于(int i=1;i让我们考虑一下完成的总功。正如您在评论中所指出的,当i=1时,内部循环运行n次,当i=2时,运行n/2次,当i=3时,运行n/3次,等等(忽略舍入误差)。这意味着完成的总功是

n+n/2+n/3+n/4+…+n/n

=n(1+1/2+1/3+1/4+…+1/n)


括号中的术语是,表示为Hn,因此总体完成的功大致为nHn。已知Hn=Θ(logn),因此总功为Θ(n logn).

你需要展示你做了什么,特别是你遇到了什么困难,而不是指望别人帮你做功课。Q:
如何通过计算找到以下代码片段的时间复杂度当i=1时,内循环将迭代n次,当i=2时,内循环将迭代n/2次,当i=3时,内循环将迭代n/3次…以此类推。因此,在这种情况下,总迭代次数将为n+n/2+n/3+n/4+n/5+…最多n项……。那么,根据这种方法,最终的复杂度是什么…???当然!请检查第107-115页,共页。