个人头像照片 晚来风急

个人介绍

暂无个人介绍

  • 最新动态
  • 文章
  • 问答
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息
  • 回答了问题 2019-07-17

    用递归算法求1~100的和,用java写。

    不能用for循环啊。
    踩0 评论0
  • 回答了问题 2019-07-17

    1000的二进制怎么算,要有步骤。

    看下面竖式:
    1000÷2 = 500 余 0
    500÷2 = 250 余 0
    250÷2 = 125 余 0
    125÷2 = 62 余 1
    62÷2 = 31 余 0
    31÷2 = 15 余 1
    15÷2 = 7 余 1
    7÷2 = 3 余 1
    3÷2 = 1 余 1
    1÷2 = 0 余 1
    反向读余数为1111101000。
    踩0 评论0
  • 回答了问题 2019-07-17

    以下哪个排序算法的最坏时间复杂度是O(nlogn)?

    对于排序算法,平均时间复杂度插入排序O(n^2)冒泡排序O(n^2)选择排序O(n^2)快速排序O(nlogn)堆排序O(nlogn)归并排序O(nlogn)基数排序O(n)希尔排序O(n^1.25)有一个时间复杂度的排列顺序,依次为Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n2)<Ο(n3)<…<Ο(2n)<Ο(n!)Ο(1)表示基本语句的执行次数是一个常数,一般来说,只要算法中不存在循环语句,其时间复杂度就是Ο(1)。Ο(log2n)、Ο(n)、Ο(nlog2n)、Ο(n2)和Ο(n3)称为多项式时间,而Ο(2n)和Ο(n!)称为指数时间。计算机科学家普遍认为前者是有效算法,把这类问题称为P类问题,而把后者称为NP问题。
    踩0 评论0
  • 回答了问题 2019-07-17

    二进制数运算100001+111

    10100
    踩0 评论0
  • 回答了问题 2019-07-17

    什么是稳定的排序方法?

    排序前是什么顺序排序后还是什么顺序
    踩0 评论0
  • 回答了问题 2019-07-17

    算法工程师需要编程技术很好吗

    编程技术一定不能差的。
    主要还是逻辑思维能力。
    踩0 评论0
  • 回答了问题 2019-07-17

    C和指针,C高级实用程序设计,数据结构与算法,适合初学C语言者吗?

    适合的,一般刚开始学,都会学这些基础的,在大学里也多是这些课程
    踩0 评论0
  • 回答了问题 2019-07-17

    请问java数据结构和算法那本书的中文版怎么比英文版少了200页啊,怎么这样啊

    主要是翻译后的问题,因为英文版的有些地方显得拖沓,而中文版的就会做些简化处理,不过内容都是一样的。
    踩0 评论0
  • 回答了问题 2019-07-17

    c语言 递归算法求1+3-5+7-9…n 要详细 简单

    #include "stdio.h"
    int main(void)
    {
    int n = 0;
    scanf("%d/n",&n);
    int sum = 0;
    bool key = 0;
    for(int i = 1;i <= n;i += 2)
    {
    if(0 == key)
    {
    sum += i;
    key = 1;
    }
    else
    {
    sum -= i;
    key = 0;
    }
    }
    printf("%d",sum);
    return 0;
    }
    踩0 评论0
  • 回答了问题 2019-07-17

    rsa dsa ecdsa 哪个好

    RAS:不对称加密算法

    不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥和私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA。以不对称加密算法为基础的加密技术应用非常广泛。
    DES算法
    踩0 评论0
  • 回答了问题 2019-07-17

    7.943十进制转为二进制怎么算

    是几进制就除以几再用余数再除就行了例如你把十进制的数不停除以16的余数按从右到左的顺序排起来就是16进制了
    例如100
    100/16=6余4
    6/16余6,所以就是64
    再例如1000
    1000/16=62余8
    62/16=3余12
    3/16余3所以结果是3C8
    10进制的不停除以8的余数从右到左排
    例如10
    10/8=1余2
    1/8余所以结果是12
    再例如50
    50/8=6余2
    6/8余6所以就是62
    再例如100
    100/8=12余4
    12/8=1余4
    1/8与1
    结果就是144
    同样二进制也是
    踩0 评论0
  • 回答了问题 2019-07-17

    请问递归算法的时间复杂度如何计算呢?

    递归算法的时间复杂度分析 收藏
    在算法分析中,当一个算法中包含递归调用时,其时间复杂度的分析会转化为一个递归方程求解。实际上,这个问题是数学上求解渐近阶的问题,而递归方程的形式多种多样,其求解方法也是不一而足,比较常用的有以下四种方法:

    (1)代入法(Substitution Method)

    代入法的基本步骤是先推测递归方程的显式解,然后用数学归纳法来验证该解是否合理。

    (2)迭代法(Iteration Method)

    迭代法的基本步骤是迭代地展开递归方程的右端,使之成为一个非递归的和式,然后通过对和式的估计来达到对方程左端即方程的解的估计。

    (3)套用公式法(Master Method)

    这个方法针对形如“T(n) = aT(n/b) + f(n)”的递归方程。这种递归方程是分治法的时间复杂性所满足的递归关系,即一个规模为n的问题被分成规模均为n/b的a个子问题,递归地求解这a个子问题,然后通过对这a个子间题的解的综合,得到原问题的解。

    (4)差分方程法(Difference Formula Method)

    可以将某些递归方程看成差分方程,通过解差分方程的方法来解递归方程,然后对解作出渐近阶估计。

    下面就以上方法给出一些例子说明。

    一、代入法

    大整数乘法计算时间的递归方程为:T(n) = 4T(n/2) + O(n),其中T(1) = O(1),我们猜测一个解T(n) = O(n2 ),根据符号O的定义,对n>n0,有T(n) < cn2 - eO(2n)(注意,这里减去O(2n),因其是低阶项,不会影响到n足够大时的渐近性),把这个解代入递归方程,得到:

    T(n) = 4T(n/2) + O(n)
    ≤ 4c(n/2)2 - eO(2n/2)) + O(n)
    = cn2 - eO(n) + O(n)
    ≤ cn2

    其中,c为正常数,e取1,上式符合 T(n)≤cn2 的定义,则可认为O(n2 )是T(n)的一个解,再用数学归纳法加以证明。

    二、迭代法

    某算法的计算时间为:T(n) = 3T(n/4) + O(n),其中T(1) = O(1),迭代两次可将右端展开为:

    T(n) = 3T(n/4) + O(n)
    = O(n) + 3( O(n/4) + 3T(n/42 ) )
    = O(n) + 3( O(n/4) + 3( O(n/42 ) + 3T(n/43 ) ) )

    从上式可以看出,这是一个递归方程,我们可以写出迭代i次后的方程:

    T(n) = O(n) + 3( O(n/4) + 3( O(n/42 ) + ... + 3( n/4i + 3T(n/4i+1 ) ) ) )

    当n/4i+1 =1时,T(n/4i+1 )=1,则

    T(n) = n + (3/4) + (32 /42 )n + ... + (3i /4i )n + (3i+1 )T(1)
    < 4n + 3i+1

    而由n/4i+1 =1可知,i<log4 n,从而

    3i+1 ≤ 3log4 n+1 = 3log3 n*log4 3 +1 = 3nlog4 3

    代入得:

    T(n) < 4n + 3nlog4 3,即T(n) = O(n)。

    三、套用公式法

    这个方法为估计形如:

    T(n) = aT(n/b) + f(n)

    其中,a≥1和b≥1,均为常数,f(n)是一个确定的正函数。在f(n)的三类情况下,我们有T(n)的渐近估计式:

    1.若对于某常数ε>0,有f(n) = O(nlogb a-ε ),则T(n) = O(nlogb a )

    2.若f(n) = O(nlogb a ),则T(n) = O(nlogb a *logn)

    3.若f(n) = O(nlogb a+ε ),且对于某常数c>1和所有充分大的正整数n,有af(n/b)≤cf(n),则T(n)=O(f(n))。

    设T(n) = 4T(n/2) + n,则a = 4,b = 2,f(n) = n,计算得出nlogb a = nlog2 4 = n2 ,而f(n) = n = O(n2-ε ),此时ε= 1,根据第1种情况,我们得到T(n) = O(n2 )。

    这里涉及的三类情况,都是拿f(n)与nlogb a 作比较,而递归方程解的渐近阶由这两个函数中的较大者决定。在第一类情况下,函数nlogb a 较大,则T(n)=O(nlogb a );在第三类情况下,函数f(n)较大,则T(n)=O(f (n));在第二类情况下,两个函数一样大,则T(n)=O(nlogb a *logn),即以n的对数作为因子乘上f(n)与T(n)的同阶。

    但上述三类情况并没有覆盖所有可能的f(n)。在第一类情况和第二类情况之间有一个间隙:f(n)小于但不是多项式地小于nlogb a ,第二类与第三类之间也存在这种情况,此时公式法不适用。

    本文来自CSDN博客,转载请标明出处: http://blog.csdn.net/metasearch/archive/2009/08/09/4428865.aspx
    踩0 评论0
  • 回答了问题 2019-07-17

    实现《算法导论》中的习题,用什么语言比较好

    算法导论。一般都写伪代码的吧

    当然如果你一定要用一种语言来写,按照个人习惯吧。
    我的比较建议C语言,毕竟是比较多的人的入门语言,感觉用来写算法不错
    踩0 评论0
  • 回答了问题 2019-07-17

    普通的学生用科学计算器,哪位神仙教我如何进行进制转换,十进制转为二进制

    学习一下乘权相加法和除2取余倒记法
    踩0 评论0
  • 回答了问题 2019-07-17

    求用C语言实现二叉树层次遍历的递归算法,谢谢!!!

    软件工程 书里面好像有吧。自己找找。
    踩0 评论0
  • 回答了问题 2019-07-17

    数据结构与算法 java语言版 第2版 [美]Adam Drozdek 课后答案

    留个邮箱我发给你哦,一定要采用给分啊
    踩0 评论0
  • 回答了问题 2019-07-17

    编写一个采用冒泡法对n个数由小到大进行排序的函数

    static void BubbleSort(int[] ia){
            // 外层循环控制遍历次数
         for (int i = 0; i < ia.Length - 1; i++) {  
            // 内层循环控制最大值沉下去,最小值慢慢浮上来
            // 如第1次,第一大的沉下去,第2次,第二大的沉下去,依此类推...
            // 大的沉下去,那么小的自然就浮上来
            // ia.Length - 1 - i这句代码的意思是:经过每次交换后,沉下去的
            // 就不用再比较,所以减i,减1是因为数组的索引从0开始
            for (int j = 0; j < ia.Length - 1 - i; j++) { 
                 if (ia[j] > ia[j+1]){
                   int temp = ia[j];
                   ia[j] = ia[j + 1];
                   ia[j + 1] = temp;
                }
            }
         }
    }

    public const int MaxValue = 10;
    static void Main(string[] args){
         int[] ia = new int[MaxValue];

         for (int i = 0; i < MaxValue; i++){ // 随机产生MaxValue个数字
             ia[i]=new Random().Next(1, 101);
             System.Threading.Thread.Sleep(50);
         }
               
         BubbleSort(ia);

         foreach (var item in ia){
             Console.WriteLine(item);
         }
     
         Console.ReadKey(true);
    }
    踩0 评论0
  • 回答了问题 2019-07-17

    如何成为一个深度学习算法工程师

    在对各种模式进行建模之后,便可以对各种模式进行识别了,例如待建模的模式是声音的话,那么这种识别便可以理解为语音识别。
    深度学习是什么
    深度学习是机器学习领域中对模式(声音:例如,人们可能认为;而这样一种技术在将来无疑是前景无限的。那么深度学习本质上又是一种什么样的技术呢,深度学习是一种能够模拟出人脑的神经结构的机器学习方式,从而能够让计算机具有人一样的智慧现在深度学习在机器学习领域是一个很热的概念,不过经过各种媒体的转载播报,这个概念也逐渐变得有些神话的感觉、图像等等)进行建模的一种方法,它也是一种基于统计的概率模型
    踩0 评论0
  • 回答了问题 2019-07-17

    能否讲解一下KMP算法呀?好难懂

    KMP算法。。看毛片算法。。
    那个。。推荐一个。。http://baike.baidu.com/view/659777.htm百度百科的解释。
    http://saturnman.blog.163.com/blog/static/5576112010969957130/这个讲解得也挺好的。
    我这几天也才刚学KMP算法,看这两个链接的东西就足够理解了。
    我自己的理解就是,用模式串生成一个next数组,不匹配的时候就返回next下标,而主串不用回溯。所以算法复杂度只是走了一遍主串。
    不懂的话。。可以一起讨论一起学习。。。Q110524628.
    踩0 评论0
  • 回答了问题 2019-07-17

    c语言算n的阶乘的递归算法

    int fn(n)
    {
    int y;
    if(n<0){ printf("error");return -1;}
    if(n==0) return 1;
    else
    {
    y=fn(n-1)
    return n*y;
    }

    }
    踩0 评论0
正在加载, 请稍后...
滑动查看更多