Java面試問題總結

來源:互聯網
上載者:User

標籤:ext   proc   節點   浮點   nod   個數   sdn   img   遞迴   

前幾天Java面試中遇到的問題,這隻是其中的一部分問題,面試中有很多問題是關於資料結構和演算法的。在這裡做下總結,希望有能力的人可以試著做一下,並在評論區留下您的答案,讓大家相互學習。謝謝

程式設計部分

第1題*

已知類定義如下

    class Node {

        public Doublevalue;

        public List<Node>children;

    }

將以下遞迴程式改成非遞迴程式(兩個程式的輸出應保持順序一致)

    publicstaticvoid process(Node node) {

        for (int i = 0; i < node.children.size(); i++) {

            Node child = node.children.get(i);

            if (child.value < node.value) {

                process(child);

            }

        }

        System.out.println(node.value);

        for (int i = 0; i < node.children.size(); i++) {

            Node child = node.children.get(i);

            if (child.value >= node.value) {

                process(child);

            }

        }

    }

 

第2題*

請完善以下程式,輸入為字元數組(數組內每個字元均不相同)和個數n,返回值是由這些字元組成的所有長度為n的字串

例如輸入為{‘a‘,‘b‘,‘c‘}和個數1,則返回值為{"a","b","c"}

例如輸入為{‘a‘,‘b‘,‘c‘,‘d‘}和個數2,則返回值為{"ab","ac","ad","ba","bc","bd","ca","cb","cd","da","db","dc"}

    public String[] doit(char[]chars){

        ......

    }

 

第3題**

參考第1題Node類定義,Node類定義了一個樹形結構,請完善以下程式

輸入node滿足以下條件:

1     node的value是大於0的浮點數

2     node的下級節點(以及更下級節點)的value可能是null或者大於0的浮點數

程式的作用如下:

1     將樹形結構裡面所有value是null的均設為大於0的浮點數

2     非葉子節點(即children數量大於0的節點)的value均等於它的children的value之和

    public void doit(Nodenode){

        ......

    }

 

第4題***

Saga語言由變數定義、變數賦值、條件執行三種語句組成,其中變數定義必須位於另外兩種語句之前,三種語句定義如下:

變數定義由變數名和常量值組成:

       def變數名=常量值

變數賦值由變數名和運算運算式組成:

       變數名=運算運算式

條件執行由比較運算式和一系列變數賦值組成:

       if(比較運算式){

              變數賦值1

              變數賦值2

              ......

       }

其中:

a)    變數名由小寫字母組成

b)    常量值為浮點數,例如1.1,2.0等

c)    運算運算式由變數、常量值、運算子加減乘除(+,-,*,/)和括弧組成

c)    比較運算式由兩個運算運算式加比較符(>,<, =)組成,樣本a+b>100.0

Saga語言程式樣本:

def a=100.0

def b=200.0

def c=1.0

def d=0.0

c=(a+b)/2.0

if(c=150.0){

       d=d+1.0

       d=d+1.0

}

請完善以下程式(寫出思路即可),輸入是任意Saga語言程式(字串格式),返回值是程式中所有變數及其最終值。

    publicMap<String, Double> doit(Stringprog){

        ......

    }

 

資料分析部分

第1題**

中為一列時序變數,綠色點為正常資料點,紅色為異常資料點。請設計演算法可識別異常點,簡述演算法架構和內容要點。










邏輯與幾何部分

第1題***

20個球,按順序標上序號1-20,將這些球放進一個箱子,老師從這個箱子中隨機取出2個球,序號分別是a和b,將a與b的和告訴學生甲,將a與b的積告訴學生乙,然後

甲問乙:你知道a和b分別是多少嗎?

乙回答:不知道

乙問甲:你知道a和b分別是多少嗎?

甲回答:不知道

乙說:呵呵,我知道了

甲說:呵呵,我也知道了

請回答a和b分別是多少,並寫出推理過程。

 

第2題**

已知平行四邊形的邊長分別為ab,外接正方形,只外接點,無外接邊,求外接正方形邊長c的範圍

 

 


 


Java面試問題總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.