- 相關(guān)推薦
阿里巴巴筆試記
考點(diǎn)(不分先后次序):
C++:1.關(guān)于DOM的描述;2.網(wǎng)絡(luò)蜘蛛系統(tǒng);3.UTF-8;4.數(shù)據(jù)庫(kù)檢索:查準(zhǔn)率和查全率;5.索引壓縮;6.設(shè)計(jì)cralwer;7.Trie樹(shù)查詢(xún);8.HTML&HTTP協(xié)議;9.信息檢索模型;10.分布式通信協(xié)議;11.分布式搜索引擎;12.雙向循環(huán)鏈表;13.快速排序;14.32位系統(tǒng)。
關(guān)于DOM的描述:
javascrip里面的dom(文檔對(duì)象模型)它是一種模型,將格式化文檔對(duì)象化處理。在xml和html 的處理中廣泛應(yīng)用。 //dom是定義超文本結(jié)構(gòu)的對(duì)象及方法,分層次的,有容器類(lèi)的對(duì)象,也有基本元素對(duì)象,而這些對(duì)象,都包含有相應(yīng)的屬性和對(duì)應(yīng)的操作方法(接口)。
//一般而言,DOM結(jié)構(gòu)準(zhǔn)確地反映了HTML文檔所包含的內(nèi)容,也就是說(shuō),每個(gè)HTML標(biāo)記表現(xiàn)為一個(gè)標(biāo)記節(jié)點(diǎn)(tag node),每個(gè)文本項(xiàng)內(nèi)容表現(xiàn)為一個(gè)文本項(xiàng)節(jié)點(diǎn)(text node)。//是W3C組織推薦的處理可擴(kuò)展置標(biāo)語(yǔ)言的標(biāo)準(zhǔn)編程接口。
2. 網(wǎng)絡(luò)蜘蛛系統(tǒng)
網(wǎng)絡(luò)蜘蛛即Web Spider,是一個(gè)很形象的名字。把互聯(lián)網(wǎng)比喻成一個(gè)蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來(lái)爬去的蜘蛛。網(wǎng)絡(luò)蜘蛛是通過(guò)網(wǎng)頁(yè)的鏈接地址來(lái)尋找網(wǎng)頁(yè),從網(wǎng)站某一個(gè)頁(yè)面(通常是首頁(yè))開(kāi)始,讀取網(wǎng)頁(yè)的內(nèi)容,找到在網(wǎng)頁(yè)中的其它鏈接地址,然后通過(guò)這些鏈接地址尋找下一個(gè)網(wǎng)頁(yè),這樣一直循環(huán)下去,直到把這個(gè)網(wǎng)站所有的網(wǎng)頁(yè)都抓取完為止。如果把整個(gè)互聯(lián)網(wǎng)當(dāng)成一個(gè)網(wǎng)站,那么網(wǎng)絡(luò)蜘蛛就可以用這個(gè)原理把互聯(lián)網(wǎng)上所有的網(wǎng)頁(yè)都抓取下來(lái)。
對(duì)于搜索引擎來(lái)說(shuō),要抓取互聯(lián)網(wǎng)上所有的網(wǎng)頁(yè)幾乎是不可能的,從目前公布的數(shù)據(jù)來(lái)看,容量最大的搜索引擎也不過(guò)是抓取了整個(gè)網(wǎng)頁(yè)數(shù)量的百分之四十左右。這其中的原因一方面是抓取技術(shù)的瓶頸,無(wú)法遍歷所有的網(wǎng)頁(yè),有許多網(wǎng)頁(yè)無(wú)法從其它網(wǎng)頁(yè)的鏈接中找到;另一個(gè)原因是存儲(chǔ)技術(shù)和處理技術(shù)的問(wèn)題,
在抓取網(wǎng)頁(yè)的時(shí)候,網(wǎng)絡(luò)蜘蛛一般有兩種策略:廣度優(yōu)先和深度優(yōu)先(如下圖所示)。廣度優(yōu)先是指網(wǎng)絡(luò)蜘蛛會(huì)先抓取起始網(wǎng)頁(yè)中鏈接的所有網(wǎng)頁(yè),然后再選擇其中的一個(gè)鏈接網(wǎng)頁(yè),繼續(xù)抓取在此網(wǎng)頁(yè)中鏈接的所有網(wǎng)頁(yè)。這是最常用的方式,因?yàn)檫@個(gè)方法可以讓網(wǎng)絡(luò)蜘蛛并行處理,提高其抓取速度。深度優(yōu)先是指網(wǎng)絡(luò)蜘蛛會(huì)從起始頁(yè)開(kāi)始,一個(gè)鏈接一個(gè)鏈接跟蹤下去,處理完這條線路之后再轉(zhuǎn)入下一個(gè)起始頁(yè),繼續(xù)跟蹤鏈接。這個(gè)方法有個(gè)優(yōu)點(diǎn)是網(wǎng)絡(luò)蜘蛛在設(shè)計(jì)的時(shí)候比較容易。兩種策略的區(qū)別,下圖的說(shuō)明會(huì)更加明確。
在網(wǎng)絡(luò)蜘蛛機(jī)器人系統(tǒng)里面,真正起指揮作用的是人工管理系統(tǒng)制定的規(guī)則和檢索索引數(shù)據(jù)庫(kù)。它可以決定什么樣的網(wǎng)站抓的勤一點(diǎn),或者干脆不抓.
3. UTF-8
使用UTF-8編碼唯一的好處是,國(guó)外的用戶(hù)如果使用Windows XP英文版,瀏覽UTF-8編碼的任何網(wǎng)頁(yè),無(wú)論是中文、還是日文、韓文、阿拉伯文,都可以正常顯示,UTF-8是世界通用的語(yǔ)言編碼,UTF-8的推廣要?dú)w功于Google的應(yīng)用,以及Blog開(kāi)發(fā)者。而如果用Windows XP英文版的IE6.0瀏覽gb2312語(yǔ)言編碼的網(wǎng)頁(yè),則會(huì)提示是否安裝語(yǔ)言包。因此,可能會(huì)失去很多的國(guó)外瀏覽者。 使用gb2312編碼的好處是,因?yàn)槌绦虍a(chǎn)生的網(wǎng)頁(yè)文本使用ANSI編碼格式,會(huì)比UTF-8文本編碼節(jié)省一些體積,訪問(wèn)速度會(huì)稍微快一點(diǎn)點(diǎn),大約是30:38的比例,也就是30K的ANSI編碼,轉(zhuǎn)為UTF-8編碼是38K,當(dāng)然,這個(gè)比例并不準(zhǔn)確,是會(huì)隨Unicode字符集區(qū)域的不同而變化的。
UTF-8(8 位元 Universal Character Set/Unicode Transformation Format)是針對(duì)Unicode 的一種可變長(zhǎng)度字符編碼。它可以用來(lái)表示 Unicode 標(biāo)準(zhǔn)中的任何字符,而且其編碼中的第一個(gè)字節(jié)仍與 ASCII 相容,使得原來(lái)處理 ASCII 字符的軟件無(wú)需或只作少部份修改后,便可繼續(xù)使用。因此,它逐漸成為電子郵件、網(wǎng)頁(yè)及其他儲(chǔ)存或傳送文字的應(yīng)用中,優(yōu)先采用的編碼。 UTF-8 編碼提供了一種簡(jiǎn)便而向后兼容的方法, 使得那種完全圍繞 ASCII 設(shè)計(jì)的操作系統(tǒng), 比如 Unix, 也可以使用 Unicode. UTF-8. UTF_8字符集
UTF-8是UNICODE的一種變長(zhǎng)字符編碼,由Ken Thompson于1992年創(chuàng)建。現(xiàn)在已經(jīng)標(biāo)準(zhǔn)化為RFC 3629。UTF-8用1到6個(gè)字節(jié)編碼UNICODE字符。如果UNICODE字符由2個(gè)字節(jié)表示,則編碼成UTF-8很可能需要3個(gè)字節(jié),而如果UNICODE字符由4個(gè)字節(jié)表示,則編碼成UTF-8可能需要6個(gè)字節(jié)。用4個(gè)或6個(gè)字節(jié)去編碼一個(gè)UNICODE字符可能太多了,但很少會(huì)遇到那樣的UNICODE字符
4.數(shù)據(jù)庫(kù)檢索:查準(zhǔn)率和查全率;
查全率與查準(zhǔn)率是評(píng)價(jià)檢索效果的兩項(xiàng)重要指標(biāo)。
查全率是指系統(tǒng)在進(jìn)行某一檢索時(shí),檢出的相關(guān)文獻(xiàn)量與系統(tǒng)文獻(xiàn)庫(kù)中相關(guān)文獻(xiàn)總量的比率,它反映該系統(tǒng)文獻(xiàn)庫(kù)中實(shí)有的相關(guān)文獻(xiàn)量在多大程度上被檢索出來(lái)。
查全率=[檢出相關(guān)文獻(xiàn)量/文獻(xiàn)庫(kù)內(nèi)相關(guān)文獻(xiàn)總量]×100%
查準(zhǔn)率是指系統(tǒng)在進(jìn)行某一檢索時(shí),檢出的相關(guān)文獻(xiàn)量與檢出文獻(xiàn)總量的比率,它反映每次從該系統(tǒng)文獻(xiàn)庫(kù)中實(shí)際檢出的全部文獻(xiàn)中有多少是相關(guān)的。
查準(zhǔn)率=[檢出相關(guān)文獻(xiàn)量/檢出文獻(xiàn)總量]×100%
通過(guò)對(duì)查準(zhǔn)率和查全率的概念分析,得到了定性的結(jié)論:查全率依賴(lài)于查準(zhǔn)率,查準(zhǔn)率的提高有利于查全率的提高。通過(guò)對(duì)兩者間關(guān)系的數(shù)學(xué)推導(dǎo),得到了查準(zhǔn)率和查全率之間一般性的定量關(guān)系。
5.索引壓縮
建立索引是搜索引擎核心技術(shù)之一,建立索引的目的是能夠快速的響應(yīng)用戶(hù)的查詢(xún)。搜索引擎最常用的索引數(shù)據(jù)結(jié)構(gòu)是倒排文檔,倒排文檔的原理其實(shí)相當(dāng)簡(jiǎn)單。為什么要進(jìn)行索引壓縮?對(duì)索引進(jìn)行壓縮有很多好處:比如可以減少索引占用的磁盤(pán)空間和內(nèi)存;比如可以減少I(mǎi)/O讀寫(xiě)量; 比如可以查詢(xún)響應(yīng)速度加快;為了能夠增加壓縮效果,一般在進(jìn)行壓縮前先改寫(xiě)索引內(nèi)容,首先把倒排索引的數(shù)值按照大小排序,然后用差值而非實(shí)際值表示(d-gap);這個(gè)是每個(gè)壓縮算法開(kāi)展前要做的工作;目前的壓縮方法可以分為固定長(zhǎng)度的和變長(zhǎng)壓縮。
具體說(shuō)是將索引編碼(落實(shí)到機(jī)器中應(yīng)該是MD5哈希值)以一種壓縮的方式來(lái)表示,既利于節(jié)省存儲(chǔ)空間,又可以提高檢索速度。其實(shí),我覺(jué)得這個(gè)東西最大的好處還是節(jié)約“緩存空間”,提高訪問(wèn)速度。采用索引壓縮能夠帶來(lái)很多好處,所以實(shí)用的搜索引擎都會(huì)采用索引壓縮技術(shù),但是對(duì)索引進(jìn)行壓縮也會(huì)帶來(lái)問(wèn)題,就是比不壓縮需要更多的計(jì)算量.
6.設(shè)計(jì)cralwer
搜索引擎的工作整體上可分為三個(gè)部分,在第一階段,Crawler開(kāi)始“爬行”頁(yè)面,獲取最原始信息,Crawler是一段小程序,它通過(guò)初始地址,訪問(wèn)頁(yè)面,分析出頁(yè)面內(nèi)部包括的鏈接,將鏈接傳送給Crawler控制模塊,Crawler控制模塊判斷哪些鏈接對(duì)應(yīng)的頁(yè)面是下一步需要訪問(wèn)的,哪一些是已經(jīng)被訪問(wèn)過(guò)的,從而指示Crawler進(jìn)行下一步“爬行”;另一方面,Crawler將獲取到的Web頁(yè)面?zhèn)魉偷巾?yè)面數(shù)據(jù)存儲(chǔ)庫(kù)(Page Repository)中,臨時(shí)存儲(chǔ)起來(lái)。第二階段,索引器將庫(kù)中存儲(chǔ)的頁(yè)面進(jìn)行解析,根據(jù)索引構(gòu)建原則創(chuàng)建索引,并將索引存儲(chǔ)到索引庫(kù)中,另外,在一些基于頁(yè)面鏈接對(duì)頁(yè)面進(jìn)行排名的搜索引擎系統(tǒng)中,鏈接分析與頁(yè)面排名的確定也在這個(gè)階段完成。第三階段,檢索引擎處理用戶(hù)的搜索請(qǐng)求,找出相關(guān)頁(yè)面文檔,并根據(jù)頁(yè)面排名高低,按順序?qū)⒔Y(jié)果返回給用戶(hù)。三個(gè)階段并行協(xié)同工作,維持搜索引擎的正常運(yùn)轉(zhuǎn)
爬行器技術(shù) :爬行器(Crawler,Spider)又叫“爬蟲(chóng)”、“蜘蛛”,工作在搜索引擎的最前端,是搜索引擎中最關(guān)鍵的部分之一,它的性能好壞直接影響到搜索引擎對(duì)于頁(yè)面信息的采集與更新。 Internet上的網(wǎng)頁(yè)可以通過(guò)鏈接進(jìn)行互訪,這使得Crawler可以從初始URL出發(fā),沿著鏈接導(dǎo)向,遍歷Internet上整體網(wǎng)頁(yè)構(gòu)成的連通圖。即使整體頁(yè)面構(gòu)成的圖不是完全連通的,也可以將Internet上的頁(yè)面集合看成是一個(gè)個(gè)連通的子圖構(gòu)成的,多個(gè)Crawler選擇合理的起點(diǎn),順著頁(yè)面鏈接進(jìn)行爬行,也能遍歷完整個(gè)圖?紤]到網(wǎng)絡(luò)上Web頁(yè)面的數(shù)量非常龐大,設(shè)計(jì)一個(gè)性能良好的爬行器需要考慮以下4個(gè)問(wèn)題[10]: 1.應(yīng)下載哪些頁(yè)面? 在多數(shù)情況下,Crawler并不下載Web上的所有頁(yè)面,即使是最復(fù)雜的搜索引擎,其索引庫(kù)中能檢索到的頁(yè)面也只占整個(gè)Web總頁(yè)面的一小部分。所以,Crawler優(yōu)先選擇最“重要”的頁(yè)面進(jìn)行下載非常重要,以保證下載的部分更有價(jià)值。 2.如何更新頁(yè)面?一旦Crawler下載了大量的頁(yè)面,它會(huì)周期性的訪問(wèn)原始頁(yè)面地址,看其是否是更新過(guò)的。Web上的頁(yè)面內(nèi)容可能變化非?,Crawler必須決定以不同的頻率訪問(wèn)不同的頁(yè)面。
3.如何降低被爬行站點(diǎn)的負(fù)載?當(dāng)Crawler獲取頁(yè)面時(shí),需要消耗部分被訪問(wèn)服務(wù)器的資源,同時(shí)也占用網(wǎng)絡(luò)帶寬,增加了網(wǎng)絡(luò)負(fù)擔(dān)。Cralwer應(yīng)使用相應(yīng)的策略降低這些消耗,否則相應(yīng)站點(diǎn)將禁止Cralwer去訪問(wèn)其頁(yè)面。 4.如何并行化爬行過(guò)程? 由于要爬行的頁(yè)面數(shù)量非常大,一個(gè)Crawler在一定時(shí)間內(nèi),通常不能勝任爬行所有頁(yè)面的能力,必須使用多個(gè)Crawler來(lái)完成這一工作。因此,Crawler之間的并行協(xié)同工作顯得非常重要。
針對(duì)Crawler工作任務(wù)的重要性及其工作量的巨大,許多搜索引擎采用了分布式Crawler技術(shù),但是如何將巨大的爬行任務(wù)均衡地分配給各個(gè)Crawler是分布式WebCrawler的關(guān)鍵問(wèn)題之一。目前許多Crawler系統(tǒng)都采用了集中式的任務(wù)分割策略
7.Trie樹(shù)查詢(xún)
基于三數(shù)組Trie索引樹(shù)原理的漢語(yǔ)詞典查詢(xún)機(jī)制,并用遞歸算法實(shí)現(xiàn)構(gòu)詞狀態(tài)表的自動(dòng)構(gòu)建.
Trie樹(shù)是搜索樹(shù)的一種,來(lái)自英文單詞"Retrieval"的簡(jiǎn)寫(xiě),可以建立有效的數(shù)據(jù)檢索組織結(jié)構(gòu),是中文匹配分詞算法中詞典的一種常見(jiàn)實(shí)現(xiàn)。它本質(zhì)上是一個(gè)確定的有限狀態(tài)自動(dòng)機(jī)(DFA),每個(gè)節(jié)點(diǎn)代表自動(dòng)機(jī)的一個(gè)狀態(tài)。在詞典中這此狀態(tài)包括"詞前綴","已成詞"等。Trie樹(shù)就是字典樹(shù),其核心思想就是空間換時(shí)間.字典樹(shù)有如下簡(jiǎn)單的性質(zhì):
(1) 根節(jié)點(diǎn)不包含字符信息;
(3) 一棵m度的Trie或者為空,或者由m棵m度的Trie組成。
搜索字典項(xiàng)目的方法為:
(1) 從根結(jié)點(diǎn)開(kāi)始一次搜索;(2) 取得要查找關(guān)鍵詞的第一個(gè)字母,并根據(jù)該字母選擇對(duì)應(yīng)的子樹(shù),轉(zhuǎn)到該子樹(shù)繼續(xù)進(jìn)行檢索;
(3) 在相應(yīng)的子樹(shù)上,取得要查找關(guān)鍵詞的第二個(gè)字母,并進(jìn)一步選擇對(duì)應(yīng)的子樹(shù)進(jìn)行檢索。
4) 迭代過(guò)程……
(5) 在某個(gè)結(jié)點(diǎn)處,關(guān)鍵詞的所有字母已被取出,則讀取附在該結(jié)點(diǎn)上的信息,即完成查找。
雙數(shù)組Trie(Double-Array Trie)是trie樹(shù)的一個(gè)簡(jiǎn)單而有效的實(shí)現(xiàn),由兩個(gè)整數(shù)數(shù)組構(gòu)成,一個(gè)是base[],另一個(gè)是check[]。設(shè)數(shù)組下標(biāo)為i ,如果base,check均為0,表示該位置為空。如果base為負(fù)值,表示該狀態(tài)為詞語(yǔ)。Check表示該狀態(tài)的前一狀態(tài),t=base+a, check[t]=i 。
8.HTML&HTTP協(xié)議
HTML(Hyper Text Mark-up Language )即超文本標(biāo)記語(yǔ)言,是 WWW 的描述語(yǔ)言,由 Tim Berners-lee提出。設(shè)計(jì) HTML 語(yǔ)言的目的是為了能把存放在一臺(tái)電腦中的文本或圖形與另一臺(tái)電腦中的文本或圖形方便地聯(lián)系在一起,形成有機(jī)的整體,人們不用考慮具體信息是在當(dāng)前電腦上還是在網(wǎng)絡(luò)的其它電腦上。這樣,你只要使用鼠標(biāo)在某一文檔中點(diǎn)取一個(gè)圖標(biāo),Internet就會(huì)馬上轉(zhuǎn)到與此圖標(biāo)相關(guān)的內(nèi)容上去,而這些信息可能存放在網(wǎng)絡(luò)的另一臺(tái)電腦中。HTML文本是由 HTML命令組成的描述性文本,HTML 命令可以說(shuō)明文字、 圖形、動(dòng)畫(huà)、聲音、表格、鏈接等。 HTML的結(jié)構(gòu)包括頭部 (Head)、主體 (Body) 兩大部分。頭部描述瀏覽器所需的信息,主體包含所要說(shuō)明的具體內(nèi)容。
HTTP協(xié)議(Hypertext Transfer Protocol,超文本傳輸協(xié)議)是用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳送協(xié)議。它可以使瀏覽器更加高效,使網(wǎng)絡(luò)傳輸減少。它不僅保證計(jì)算機(jī)正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內(nèi)容首先顯示(如文本先于圖形)等。超文本傳輸協(xié)議(HTTP)是一種為分布式,合作式,多媒體信息系統(tǒng)服務(wù),面向應(yīng)用層的協(xié)議。它是一種通用的,不分狀態(tài)(stateless)的協(xié)議,除了諸如名稱(chēng)服務(wù)和分布對(duì)象管理系統(tǒng)之類(lèi)的超文本用途外,還可以通過(guò)擴(kuò)展它的請(qǐng)求方式,錯(cuò)誤代碼和報(bào)頭[47]來(lái)完成許多任務(wù)。HTTP的一個(gè)特點(diǎn)是數(shù)據(jù)表示方式的典型性和可協(xié)商性允許獨(dú)立于傳輸數(shù)據(jù)而建立系統(tǒng)。
9.信息檢索模型;
信息檢索的數(shù)學(xué)模型 2.1 信息檢索系統(tǒng)的形式化表示 2.2 集合論檢索模型 2.2.1 布爾檢索模型 2.2.2 模糊集合模型 2.2.3 擴(kuò)展布爾模型2.3 代數(shù)論檢索模型 2.3.1 向量空間模型 2.3.2 潛在語(yǔ)義索引模型 2.3.3 神經(jīng)網(wǎng)絡(luò)模型 2.4 概率論檢索模型 2.4.1 經(jīng)典概率模型 2.4.2 基于Bayesian網(wǎng)絡(luò)的檢索模型 2.5 其他信息檢索模型與數(shù)學(xué)理論 2.5.1 結(jié)構(gòu)化檢索模型 2.5.2 瀏覽模型 2.5.3 其他新型數(shù)學(xué)理論提出了一種基于本體語(yǔ)義模型的信息檢索方法。該方法充分利用領(lǐng)域本體提供的概念之間的語(yǔ)義相關(guān)性,從語(yǔ)義模型擴(kuò)展、概念相似度、相關(guān)度計(jì)算,并以用戶(hù)反饋等角度探討了基于語(yǔ)義模型的自動(dòng)推理方法在信息檢索中的應(yīng)用,文章介紹了系統(tǒng)實(shí)現(xiàn)框架. 包括布爾檢索模型、向量空間模型和概率檢索模型在內(nèi)的信息檢索數(shù)學(xué)模型.
10.分布式通信協(xié)議;
分布式虛擬環(huán)境(DVE)中高速運(yùn)動(dòng)實(shí)體的狀態(tài)更新數(shù)據(jù)量很大,對(duì)實(shí)時(shí)性要求高,現(xiàn)有的通訊協(xié)議不支持消息廢除,因而不能很好地支持新的狀態(tài)更新消息覆蓋過(guò)時(shí)消息。文章提出了一種可更新隊(duì)列的概念模型,在此基礎(chǔ)上提出了一種新的協(xié)議方案,它支持過(guò)時(shí)消息的丟棄,更好地滿(mǎn)足了實(shí)時(shí)交互的需要。分布式實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)必須能夠處理具有時(shí)間限制的應(yīng)用,而這些應(yīng)用所涉及的某些數(shù)據(jù)又不在應(yīng)用本地,所以不可避免地要與網(wǎng)絡(luò)上的其它結(jié)點(diǎn)進(jìn)行通訊,傳送數(shù)據(jù)或消息.在分布式實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)中,不僅要求數(shù)據(jù)值正確,而且具有時(shí)間限制,即在規(guī)定的時(shí)間內(nèi),值正確的數(shù)據(jù)才是有效的.所以,實(shí)時(shí)通訊中,不僅要求數(shù)據(jù)或消息傳送正確,而且要盡可能保證或必須保證數(shù)據(jù)或消息在應(yīng)用可允許的時(shí)間范圍內(nèi)完成傳送.
11.分布式搜索引擎
分布式搜索引擎是根據(jù)地域、主題、IP地址及其它的劃分標(biāo)準(zhǔn)將全網(wǎng)分成若干個(gè)自治區(qū)域,在每個(gè)自治區(qū)域內(nèi)設(shè)立一個(gè)檢索服務(wù)器,而每個(gè)檢索服務(wù)器由信息搜索機(jī)器人、索引搜索軟件數(shù)據(jù)庫(kù)和代理三部分組成。信息搜索機(jī)器人負(fù)責(zé)本自治區(qū)域內(nèi)的信息搜索,并建立索引信息存入索引數(shù)據(jù)庫(kù)。代理負(fù)責(zé)向用戶(hù)提供查詢(xún)接口,并與其它代理進(jìn)行互換,實(shí)現(xiàn)檢索服務(wù)器之間的信息交換,且查詢(xún)可以重定向,即如果一個(gè)索引數(shù)據(jù)庫(kù)沒(méi)有滿(mǎn)足查詢(xún)要求,它可以將查詢(xún)請(qǐng)求發(fā)送到其它檢索服務(wù)器上。
它與集中式搜索引擎相比有以下優(yōu)點(diǎn):各檢索服務(wù)器之間相互共享資源,站點(diǎn)只向本自治區(qū)域內(nèi)的信息搜索機(jī)器人提供信息,減輕了網(wǎng)絡(luò)及各站點(diǎn)的負(fù)載。各代理之間的相互協(xié)作及查詢(xún)重定向使得提供的服務(wù)更完善。 與Web本身的分布式特性相適應(yīng),具有良好的可擴(kuò)充性,便于維護(hù)。索引信息劃分到各自的索引數(shù)據(jù)庫(kù)中,使得各索引數(shù)據(jù)庫(kù)相對(duì)較小,查詢(xún)的響應(yīng)時(shí)間相對(duì)較短。部分檢索服務(wù)器發(fā)生故障時(shí),其它部分能正常工作。Web服務(wù)器集群是一種典型的分布式處理系統(tǒng)。所謂Web集群就是采用高速網(wǎng)絡(luò),將原來(lái)獨(dú)立的若干個(gè)服務(wù)器聯(lián)結(jié)起來(lái),作為一個(gè)整體提供服務(wù),把到達(dá)的請(qǐng)求分配到集群中的各個(gè)后臺(tái)服務(wù)器上,讓它們分?jǐn)傌?fù)載及I/O,通過(guò)并行處理提高性能。此時(shí)涉及到請(qǐng)求分配器及負(fù)載平衡的技術(shù)問(wèn)題。開(kāi)發(fā)垂直門(mén)戶(hù)的分布式搜索引擎系統(tǒng)時(shí),發(fā)現(xiàn)有四種不同應(yīng)用的分布式搜索引擎: 1. 分布式元搜索: 2. 散列分布搜索引擎 3. Peer 2 peer 搜索引擎 4. 局部遍歷型搜索引擎.分布式元搜索:
14.32位系統(tǒng)
32位系統(tǒng)指機(jī)內(nèi) 數(shù)據(jù)長(zhǎng)度,指令長(zhǎng)度,地址長(zhǎng)度是二進(jìn)制32位。 64位系統(tǒng)指機(jī)內(nèi) 數(shù)據(jù)長(zhǎng)度,指令長(zhǎng)度,地址長(zhǎng)度是二進(jìn)制64位。 64位系統(tǒng)速度快。32位系統(tǒng)系統(tǒng)要尋高于32位的地址就要用到復(fù)雜一點(diǎn)的運(yùn)算,用兩個(gè)32位單元組合成(好幾步才能到位)。64位系統(tǒng)直接尋址(一步到位)。
JAVA:1.Servlet中怎樣控制頁(yè)面在客戶(hù)端的緩存策略;2.執(zhí)行存儲(chǔ)過(guò)程;3.JSP;4.Thread.wait()可否設(shè)置超時(shí);5.注釋XML內(nèi)容:CDATA;6.IOC;7.Open-Closed原則含義;8.JUnit TestCase基類(lèi)中的代碼;9.javax.servle.http.HttpServlet;10.JDBC連接池&功能;11.XML Schema:<xs:choic>&<xs:sequence>;12.領(lǐng)域模型;13.Servlet生命周期。
還有綜合類(lèi)的,就有點(diǎn)類(lèi)似公務(wù)員考試的題目,還有一些關(guān)于計(jì)算機(jī)的題目,例如考點(diǎn):
軟件測(cè)試的對(duì)象;2.用戶(hù)進(jìn)程的跟蹤信息存在于什么目錄;3.how使普通用戶(hù)可執(zhí)行超級(jí)用戶(hù)文件;4.向有限空間輸入超長(zhǎng)字符串是什么攻擊,等等。大題就兩道:1.隱馬爾科夫模型(HMM)的3個(gè)基本問(wèn)題;2.(寫(xiě)函數(shù)的)。其實(shí)看到這些題目,我就蒙了,有些根本就沒(méi)見(jiàn)過(guò)。但是別怕,是否做出這些題目,并不是他們是否選擇你的標(biāo)準(zhǔn)(我覺(jué)得),都是摸一下底而已。我相信,大部分的人都是做不出來(lái)的,里面涉及的知識(shí)點(diǎn),也不是全能從課本學(xué)來(lái),靠的是積累。當(dāng)然,這些也只是我個(gè)人的看法,因?yàn)槲乙矝](méi)過(guò)這個(gè)筆試,不過(guò)我覺(jué)得我還是有收獲的。這是我第一個(gè)參加的筆試,重在過(guò)程,所以我列下了這兩個(gè)方向的考點(diǎn),可能還是有點(diǎn)參考價(jià)值吧!
隱馬爾科夫模型(hidden Markov model,縮寫(xiě)為HMM)的提出最初是在語(yǔ)音處理領(lǐng)域。HMM是在Markov鏈的基礎(chǔ)上發(fā)展起來(lái)的一種統(tǒng)計(jì)模型。由于實(shí)際問(wèn)題比Markov鏈模型所描述的更為復(fù)雜,因此在HMM中觀察到的事件與狀態(tài)并不是一一對(duì)應(yīng),而是與每個(gè)狀態(tài)的一組概率分布相聯(lián)系。它是一個(gè)雙重隨機(jī)過(guò)程,其中之一是Markov鏈,描述狀態(tài)的轉(zhuǎn)移;另一個(gè)描述每個(gè)狀態(tài)和觀察值之間的統(tǒng)計(jì)對(duì)應(yīng)關(guān)系。這樣,HMM以概率模型描述觀察值序列,具有很好的數(shù)學(xué)結(jié)構(gòu),能夠比較完整地表達(dá)觀察值序列的特征。
【阿里巴巴筆試記】相關(guān)文章:
阿里巴巴筆試題08-10
阿里巴巴筆試題07-17
阿里巴巴筆試題201508-01
2015年阿里巴巴筆試題08-05
2013阿里巴巴筆試試題09-23
阿里巴巴公司DBA筆試題07-31
阿里巴巴2010年DBA筆試題07-26
阿里巴巴校招筆試題,試題分享08-10
2015年阿里巴巴校園招聘筆試題08-04