美文网首页
数算一至二章书面作业

数算一至二章书面作业

作者: 细雨沉沙 | 来源:发表于2018-10-09 17:28 被阅读0次

    1.1

    n=15

    1.2

    1. 证明:首先以θ定义可知其有自反性即 f(n)=θ(g(n)) => θ(f(n))=g(n),又对任意的f , g有f(n) + g(n)=θ( max( f(n) , g(n) ) ),故有 max ( f(n) , g(n) ) = θ( f(n) + g(n) );

    1.3

    1. T(n)=T(n-1)+n;
      T(n-1)=T(n-2)+n-1

      T(1)=T(0)+1;
      以上n式相加有 T(n)=T(0) +n(n+1)/2

    O(T(n))=O( n^2)

    2.1

    设置两个指针fast和slow分别沿着链表移动,令slow每次移动一格,fast每次移动两格,若单向链表有环,则在此后的某一时间两个指针必将相遇

    fast=fast->next->next;
    slow=slow->next; 
    

    时间复杂度为O(n)
    空间复杂度为O(1)

    2.2

    (1)在第i个用该额外的指针指向第2i个,若不存在第2i个则将该指针置为null
    伪代码:
    if(i>当前位置&&额外指针不为空)
    {
    if(i<额外指针所指的位置)
    转向next指向位置
    else
    转向额外指针所指位置
    }
    重复上述操作直到找到第i个
    (2)相当于二分查找,时间复杂度为O(logn)

    相关文章

      网友评论

          本文标题:数算一至二章书面作业

          本文链接:https://www.haomeiwen.com/subject/zgqyaftx.html