1. 程式人生 > 其它 >帆軟筆試涼了

帆軟筆試涼了

因為是莫名其妙收到的筆試通知,所以本來也沒抱有太大期望,不過拿到題目發現,其實真的沒那麼難,框架、CSS、網路都沒考,cookie和token也分別只考了一題,JS考的也很基礎,智力題有點搞,不過也還沒到完全沒法做的程度,程式設計題也不難,不用處理輸入輸出,第一題差不多是leetcode easy難度,第二題最多也只是medium難度,不過第一題我API都記不住,好在可以用本地IDE,勉強做出來了,第二題考的DFS,不知道遇到多少次了,一直當鴕鳥,這次總算翻車了。

總之,懶狗是沒有未來的,還是要加油。

附上第一題我寫的程式碼:

//  給每個陣列去重,排序
function trans(arr) {
    let m 
= new value(); let arr2 = []; arr.sort((a, b) => {return a - b;}) for(let i = 0; i < arr.length; i++) { if(!m.has(arr[i])) { m.set(arr[i], 1); }else { m.set(arr[i], m.get(arr[i]) + 1); } } m.forEach(function (v, k) { if
(v >= 1) { arr2.push(k); } }) return arr2; } function intersection( arrs ) { // write code here for(let i = 0; i < arrs.length; i++) { arrs[i] = trans(arrs[i]); } let newArr = []; for(let i = 0; i < arrs.length; i++) { for(let j = 0
; j < arrs[i].length; j++) { newArr.push(arrs[i][j]); } } newArr.sort((a, b) => { return a - b; }) let m = new value(); for(let i = 0; i < newArr.length; i++) { if(!m.has(newArr[i])) { m.set(newArr[i], 1); }else { m.set(newArr[i], m.get(newArr[i]) + 1); } } let result = []; m.forEach(function (v, k) { if(v >= arrs.length) { result.push(k); } }) return result; } console.log(intersection([[1,2,2], [2,3], [3,4]]));