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