3月13號江安筆試。
四道算法題。
第一:求一個整數(shù)的逆序。我的做法就是除10取余,以及取除數(shù),然后用append()追加到StringBuffer里面,然后Integer.valueof()輸出。注意要考慮負(fù)數(shù)的情況。 當(dāng)時沒太注意。
第二:兩個一樣的數(shù)組,在一個中間插入0,求小于O(n)的解法找出插入0的位置,二叉查找。用中間的比,如果不一樣就是0插入的位置在前面 一樣就是在后面
第三:層次遍歷二叉樹,用隊列做。
第四:從字符串中去掉n個數(shù),使得剩下的數(shù)最大。貪心做法:從第一位開始去除,如果當(dāng)前位置的值比后一位的值小就去除。
面試:稍微問了下項目問題,然后就是直接算法。第一道算法題1到n的數(shù)組,隨機(jī)排列,用其中的一個數(shù),取代另一個數(shù),求取代的數(shù)的是多少。做法就是數(shù)組的值相加減去n(n+1)/2得到一個等式,在一個就是數(shù)組值的平方相加減去1/6n(n+1)(2n+1);