javascript筆試題(4) js模板

2021-07-12 04:32:44 字數 2890 閱讀 5124

(2023年春季阿里巴巴實習生筆試)

題目:有乙個大陣列,var a = [『1』,』2』,』3』,…];a陣列的長度是100,內容填充隨機整數的字串,請先構造此陣列a,然後設計乙個演算法,將其內容去重。

function

random

(n)

console.log(arr);

return arr;

}//使用indexof 這裡也可以使用arr2的indexof

function

delerepeat1

(arr)

}return arr2;

}//使用hash

function

delerepeat2

(arr) ;

var len = arr.length;

for (var i = 0; i < len; i++)

}return arr2;

}var arr = random(100);

console.log(delerepeat1(arr));

console.log(delerepeat2(arr));

隨機生成陣列。陣列去重。

上面兩個方法是大神們推薦的。

我們知道js的陣列有splice函式,可以刪除陣列中的乙個值。然後我就嘗試不建立新陣列,迴圈遍歷陣列,當判斷陣列內arr.indexof(arr[i])!=i的時候,直接使用splice函式去刪除第i個元素,發現結果是錯的。

少刪除了一些元素。

為啥捏。一想就明白了。

我當時是這麼寫的。

for(var i=0;i

length;i++)

當我成功刪除了乙個元素的時候,arr.length就減一了,i位置的數被刪除了,那下乙個數應該還是第i個數。i不應當自增1。

寫成這樣才可以捏

function

delerepeat3

(arr)

}return arr;

}

當然要計算一下時間複雜度了。

第一種方法:迴圈遍歷加indexof方法(indexof當然也要遍歷陣列了)

o(n*n)時間複雜度。

第二種方法:迴圈遍歷加hash 。hash的事件複雜度是o(1)呀。

o(n)的事件複雜度。

第三種方法:迴圈遍歷 加 indexof 加 splice 。好吧。這個的時間複雜度 最高。o(n*n*n)的時間複雜度。

所以,最好的陣列去重方式還是hash,以空間換時間的辦法。

(2023年春季阿里巴巴實習生筆試)

物件字面量:

var list = ;

var str = '';

function

substitute

(str, o, regexp) 裡的內容,並進行替換。

return str.replace(regexp ||/\/g, function

(match, name) );

}console.log(substitute(str,list));

正規表示式裡/g的目的是匹配n次。

如果沒有/g,匹配玩乙個{}之後就停止了。有了/g可以接著往下匹配。

/w 匹配任意乙個字母或數字或下劃線,也就是 a~z,a~z,0~9,_ 中任意乙個。

- 1.匹配次數中的貪婪與非貪婪

匹配的貪婪模式。匹配最左端的「」(即最後一次出現」}」才匹配)。使得匹配串很長。

就是匹配的非貪婪模式。匹配最左端的「」(即第一次出現」}」就匹配了)。使得匹配串很長。

舉例1:表示式 "(.*)" 與字串 "aa

bb" 匹配時,匹配的結果是:成功;匹配到的內容是 "aa

bb" 整個字串, 表示式中的 "" 將與字串中最後乙個 "" 匹配。

舉例2:相比之下,表示式 "(.*?)" 匹配舉例1中同樣的字串時,將只得到 "aa

", 再次匹配下乙個時,可以得到第二個 "bb

"。

這裡使用了非貪婪模式,雖然貪婪模式也可以得出正確答案,但是效能沒有非貪婪模式好。

(2023年春季阿里巴巴實習生筆試)

題目:在頁面上的這樣的乙個區塊,區塊中展示的資料都是頁面載入後從後端ajax介面獲取的,請實現該區塊的資料請求與渲染的邏輯。

要求:1.進行當前區塊的樣式布局。

2.設計當前區塊所適合的json格式、或者xml的資料格式(要包含商品、商品原價、商品折扣價、商品標題、商品標籤)並模擬介面data.json/data.xml

3.自行選擇框架(kissy,yui,jq)或者原生**編寫與設計好的後端介面通訊和渲染的過程。

json.js

/**

* created by administrator on 2016/5/29.

*/var json = ,,,

,,,,

,,,]

}

index.html

lang="en">

charset="utf-8">

title>

* ul

lia, a

img, p

ap .money

style>

head>

ul>

c 常見筆試題(4)

40.鍊錶題 乙個鍊錶的結點結構 struct node typedef struct node node 1 已知鍊錶的頭結點head,寫乙個函式把這個鍊錶逆序 intel node reverselist node head 鍊錶逆序 p2 next p1 head p2 return head...

近期公司筆試題(4)

乙個字串和乙個正整數k,你需要對從字串開頭算起的每3k個字元的前k個字元進行反轉。如果剩餘少於k個字元,則將所剩餘的所有字串全部反轉。如果小於3k但是大於或等於k個字元,則反轉前k個字元,並將所剩餘的字元保持原樣。輸入描述 輸入需要反轉的字串s與正整數k k 0 輸出描述 輸出經過反轉後的字串 例項...

html,css筆試題分享 4

加粗 strong b 上標 sub 下標 sup 居中 center 字型 font 作用 告訴瀏覽器文件使用的是那種文件型別,是html還是xhtml 型別 嚴格版本過濾版本基於框架html版本 iframe的優點和缺點?優點 可以重複呼叫,過載頁面的時候不需要載入整個頁面,只需要載入結構,維護...