面試總結

分享一下最近找工做遇到的面試題,鑑於我剛剛畢業,問題大多比較基礎。java

數據結構和算法

1. 排序算法的原理和實現?面試

參考博客:http://blog.csdn.net/hguisu/article/details/7776068算法

 

2. 隊列和棧原理和實現?數組

參考博客:http://blog.csdn.net/hguisu/article/details/7674195數據結構

 

3. 海量的日誌文件中存放着ip,找出其中出現次數最多的一個或者幾個ip?數據結構和算法

ps. 文件很大,沒法一次加載到內存中方案: MapReduce方法,分治法ui

先將每一個ip根據hash(ip)%1024存放到1024個文件中去,這樣相同的ip只會在一個文件中。.net

而後把每一個文件中的ip求出出現次數最多的一個或多個ip(可使用java中的HashMap),而後綜合多個文件求出出現次數最多的一個或者幾個ip。日誌

 

 

4. 二分查找的思想和實現blog

給定一個已經排好序的數組,找出某個值所在的數組中的位置?

    public static int binarySearch(int[] arrays, int aim, int start, int end){
        if (start == end){
            return -1;
        }
        int center = (start + end) / 2;
        if (arrays[center] > aim){
            return binarySearch(arrays, aim, start, center - 1);
        }else if (arrays[center] < aim){
            return binarySearch(arrays, aim, center + 1, end);
        }else {
            return center;
        }
    }

Java

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息