<nav id="iugoa"></nav>
  • <xmp id="iugoa"><menu id="iugoa"></menu>
    <menu id="iugoa"><strong id="iugoa"></strong></menu>
  • <nav id="iugoa"></nav>
    <menu id="iugoa"></menu>
    <menu id="iugoa"><strong id="iugoa"></strong></menu>
    Java知識分享網 - 輕松學習從此開始!????

    Java知識分享網

    Java1234官方群24:java1234官方群24
    Java1234官方群24:791563025
         

    Mycat實現mysql高可用集群視頻教程免費領取

    畢設代做,包查重聯系人QQ:1982956321畢設大神

    領取國內優秀就業,加薪,跳槽項目課程源碼-vue2+jwt+springboot+mybaits前后端分離通訊錄系統課程

    SpringBoot打造企業級進銷存

    Java1234 VIP課程

    領取微信掃碼登錄Java實現視頻教程

    Java1234至尊VIP(特價活動)

    2020年阿里巴巴面試 PDF 下載


    分享到:
    時間:2020-04-16 21:04來源:http://www.gemtrap.cn 作者:小鋒  侵權舉報
    2020年阿里巴巴面試 PDF 下載
    失效鏈接處理
    2020年阿里巴巴面試 PDF 下載

    下載地址:

    提取碼:pqqr

    相關截圖:


    主要內容:

    1.1.1問題:如何實現一個高效的單向鏈表逆序輸出?
    出題人:阿里巴巴出題專家:昀龍/阿里云彈性人工智能負責人
    參考答案:下面是其中一種寫法,也可以有不同的寫法,比如遞歸等。供參考。
    typedef struct node{
        int           data;
        struct node*  next;
        node(int d):data(d), next(NULL){}
    }node;
     
    void reverse(node* head)
    {
        if(NULL == head || NULL == head->next){
            return;
        }
        
        node* prev=NULL;
        node* pcur=head->next;
        node* next;
        
        while(pcur!=NULL){
            if(pcur->next==NULL){
                pcur->next=prev;
                break;
            }
            next=pcur->next;
            pcur->next=prev;
            prev=pcur;
            pcur=next;
        }
        
        head->next=pcur;
        node*tmp=head->next;
        while(tmp!=NULL){
            cout<<tmp->data<<"\t";
            tmp=tmp->next;
        }
    }
     
     
    1.1.2題目:已知 sqrt (2)約等于 1.414,要求不用數學庫,求 sqrt (2)精確到小數點后 10 位。
    出題人:——阿里巴巴出題專家:文景/阿里云 CDN 資深技術專家
    參考答案:
    * 考察點
    1.基礎算法的靈活應用能力(二分法學過數據結構的同學都知道,但不一定往這個方向考慮;如果學過數值計算的同學,應該還要能想到牛頓迭代法并解釋清楚)
    2.退出條件設計
    二分法
    1. 已知 sqrt(2)約等于 1.414,那么就可以在(1.4, 1.5)區間做二分
    查找,如: a) high=>1.5 b) low=>1.4 c) mid => (high+low)/2=1.45 d) 1.45*1.45>2 ? high=>1.45 : low => 1.45 e) 循環到 c)
    2. 退出條件
    a) 前后兩次的差值的絕對值<=0.0000000001, 則可退出
    const double EPSILON = 0.0000000001;
     
    double sqrt2() {
        double low = 1.4, high = 1.5;
        double mid = (low + high) / 2;
     
        while (high - low > EPSILON) {
            if (mid * mid > 2) {
                high = mid;
            } else {
                low = mid;
            }
            mid = (high + low) / 2;
        }
     
        return mid;
    }
    牛頓迭代法
    1.牛頓迭代法的公式為:
    xn+1 = xn-f(xn)/f'(xn)
    對于本題,需要求解的問題為:f(x)=x2-2 的零點
    EPSILON = 0.1 ** 10
    def newton(x):
        if abs(x ** 2 - 2) > EPSILON:
            return newton(x - (x ** 2 - 2) / (2 * x))
        else:
            return x
     

    ------分隔線----------------------------
    鋒哥公眾號


    鋒哥微信號


    在线aav片线 - 视频 - 在线观看 - 影视资讯 - 品爱网