tencent測試崗位面試題_第1頁
tencent測試崗位面試題_第2頁
tencent測試崗位面試題_第3頁
tencent測試崗位面試題_第4頁
tencent測試崗位面試題_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、1.有一個文件test.txt里面有四列(name class address age),問:用_shell命令打印出class列的內(nèi)容。-awk print $2 test.txt2.英特網(wǎng)的遠程登錄的工作模式是_工作模式。-客戶機/服務器3.防止系統(tǒng)區(qū)被破壞的方法有兩種:存儲保護鍵和_。-定時備份4.多播IP用的是哪類地址(D)A.A類地址 B.B類地址 C.C類地址 D.D類地址5.關系代數(shù)的優(yōu)化策略是_。-盡早執(zhí)行選擇運算6.在分解中,無損連接,函數(shù)依賴屬于_3nf_。7.在完成了數(shù)據(jù)庫的模式的定義之后,數(shù)據(jù)字典里面應該包括_。8.可重定位內(nèi)存分配的目的是_。-解決碎片和緊縮問題9.u

2、nix的目錄結構是_。10.連接方式存儲的隊列,在刪除一個節(jié)點時(D) 選項可能記不清了,大概是這樣A.只改動頭指針 B.只改動尾指針 C.頭指針和尾指針都改動 D.頭指針和尾指針可能改動11.不帶頭指針的單鏈表的隊列,在刪除一個節(jié)點時(D) 10和11這兩個題目有什么區(qū)別,不解?A.只改動頭指針 B.只改動尾指針 C.頭指針和尾指針都改動 D.頭指針和尾指針可能改動12.完整性約束包括:主鍵約束,外鍵約束,和全局約束。-所以應該是:用戶自定義約束13.IEEE802.3物理地址是(C)位A.32bit B.64bit C. 48bit D.16bit14.哪一種數(shù)據(jù)的查詢需要優(yōu)化A.層次數(shù)據(jù)

3、庫 B.網(wǎng)狀數(shù)據(jù)庫 C.關系數(shù)據(jù)庫 D.無關系數(shù)據(jù)庫15.負責壓力測試不包括A.訪問量 B.點擊次數(shù) C.業(yè)務處理時間 D.業(yè)務請求吞吐量16. 在五層的網(wǎng)絡模型中,傳輸層屬于第_4_層。騰訊軟件測試筆試題(二)1、計算表達式x6+4x4+2x3+x+1最少需要做次乘法A、3 B、4 C、5 D、62、給定3個int類型的正整數(shù)x,y,z,對如下4組表達式判斷正確的選項int a1=x+y-z; int b1=x*y/z;int a2=x-z+y; int b2=x/z*y;int c1=xz; int d1=x&y|z;int c2=xzA、a1一定等于a2B、b1一定定于b2C、c

4、1一定等于c2D、d1一定等于d23、程序的完整編譯過程分為是:預處理,編譯,匯編等,如下關于編譯階段的編譯優(yōu)化的說法中不正確的是A、死代碼刪除指的是編譯過程直接拋棄掉被注釋的代碼;B、函數(shù)內(nèi)聯(lián)可以避免函數(shù)調(diào)用中壓棧和退棧的開銷C、For循環(huán)的循環(huán)控制變量通常很適合調(diào)度到寄存器訪問D、強度削弱是指執(zhí)行時間較短的指令等價的替代執(zhí)行時間較長的指令4、如下關于進程的描述不正確的是A、進程在退出時會自動關閉自己打開的所有文件B、進程在退出時會自動關閉自己打開的網(wǎng)絡鏈接C、進程在退出時會自動銷毀自己創(chuàng)建的所有線程D、進程在退出時會自動銷毀自己打開的共享內(nèi)存5、在如下8*6的矩陣中,請計算從A移動到B一共

5、有多少種走法?要求每次只能向上揮著向右移動一格,并且不能經(jīng)過P;A、492B、494C、496D、4986、SQL語言中刪除一個表的指令是A、DROP TABLEB、DELETE TABLEC、DESTROY TABLED、REMOVE TABLE7、某產(chǎn)品團隊由美術組、產(chǎn)品組、client程序組和server程序組4個小組構成,每次構建一套完整的版本時,需要各個組發(fā)布如下資源。美術組想客戶端提供圖像資源(需要10分鐘),產(chǎn)品組向client組合server提供文字內(nèi)容資源(同時進行,10分鐘),server和client源代碼放置在不同工作站上,其完整編譯時間均為10分鐘切編譯過程不依賴于任

6、何資源,client程序(不包含任何資源)在編譯完畢后還需要完成對程序的統(tǒng)一加密過程(10分鐘)??梢哉垎?,從要完成一次版本構建(client與server的版本代碼與資源齊備),至少需要多少時間A、60分鐘B、40分鐘C、30分鐘D、20分鐘8、如下關于編譯鏈接的說法錯誤的是A、編譯優(yōu)化會使得編譯速度變慢B、預編譯頭文件可以優(yōu)化程序的性能C、靜態(tài)鏈接會使得可執(zhí)行文件偏大D、動態(tài)鏈接庫會使進程啟動速度偏慢9、如下關于鏈接的說法錯誤的是A、一個靜態(tài)庫中不能包含兩個同名全局函數(shù)的定義B、一個動態(tài)庫中不能包含兩個同名全局函數(shù)的定義C、如果兩個靜態(tài)庫都包含一個同名全局函數(shù),他們不能同時被鏈接D、如果兩

7、個動態(tài)庫都包含一個同名全局函數(shù),他們不能同時被鏈接10、排序算法的穩(wěn)定是指,關鍵碼相同的記錄排序前后相對位置不發(fā)生改變,下面哪種排序算法是不穩(wěn)定的A、插入排序B、冒泡排序C、快速排序D、歸并排序11、下列說法中錯誤的是:A、插入排序某些情況下復雜度為O(n)B、排序二叉樹元素查找的復雜度可能為O(n)C、對于有序列表的排序最快的是快速排序D、在有序列表中通過二分查找的復雜度一定是O(n log2n)12、在程序設計中,要對兩個16K×16K的多精度浮點數(shù)二維數(shù)組進行矩陣求和時,行優(yōu)先讀取和列優(yōu)先讀取的區(qū)別是A、沒區(qū)別B、行優(yōu)先快C、列優(yōu)先快D、2種讀取方式速度為隨機值,無法判斷A、1

8、024B、1018C、55D、5014、TCP的關閉過程,說法正確的是A、TIME_WAIT狀態(tài)稱為MSL(Maximum Segment Lifetime)等待狀態(tài)B、對一個established狀態(tài)的TCP連接,在調(diào)用shutdown函數(shù)之前調(diào)用close接口,可以讓主動調(diào)用的一方進入半關閉狀態(tài)C、主動發(fā)送FIN消息的連接端,收到對方回應ack之前不能發(fā)只能收,在收到對方回復ack之后不能發(fā)也不能收,進入CLOSING狀態(tài)D、在已經(jīng)成功建立連接的TCP連接上,如果一端收到RST消息可以讓TCP的連潔端繞過半關閉狀態(tài)并允許丟失數(shù)據(jù)。15、操作系統(tǒng)的一些特別端口要為特定的服務做預留,必須要ro

9、ot權限才能打開的端口描述正確的是A、端口號在64512-65535之間的端口B、所有小于1024的每個端口C、RFC標準文檔中已經(jīng)聲明特定服務的相關端口,例如http服務的80端口,8080端口等D、所有端口都可以不受權限限制打開16、找工作的季節(jié)馬上就到了,很多同學去圖書館借閱面試寶典這本書,現(xiàn)在圖書館外有6名同學排隊,其中3名同學要將手中的面試寶典還至圖書館,有3名同學希望從圖書館中可以借到面試寶典,若當前圖書館內(nèi)已無庫存面試寶典,要保證借書的3名同學可以借到書,請問這6位同學有多少種排隊方式A)60B)120C)180D)360填空題1、除了10進制、2進制之外,16進制表達式在計算機

10、領域中也經(jīng)常使用(例如各種字符集的定義描述),下式:(20XX)10+(AF1)16的結果是( )(請用10進制表示)。2、ack(3 , 3)的執(zhí)行結果是多少?int ack(int m,int n)if(m = 0)return n + 1;else if(n = 0)return ack(m-1,1);elsereturn ack(m - 1 , ack(m , n-1);3、某互聯(lián)網(wǎng)產(chǎn)品(例如,一款網(wǎng)絡游戲)同時在線曲線(Average Concurrency Users,ACU)24小時數(shù)據(jù)如下圖所示。現(xiàn)已知全天平均在線人數(shù)為5000人,玩家每次登陸后平均在線時長為2小時。請你估計一

11、下,平均下來每分鐘約有( )個玩家登錄。4、如下SQL語句是需要列出一個論壇版面第一頁(每頁顯示20個)的帖子(post)標題(title),并按照發(fā)布(create_time)降序排列:SELECT title FROM post( )create_time DESC( )0,205、為了某項目需要,我們準備構造了一種面向?qū)ο蟮哪_本語言,例如,對所有的整數(shù),我們都通過Integer類型的對象來描述。在計算“1+2”時,這里的“1”,“2”和結果“3”分別為一個Integer對象。為了降低設計復雜度,我們決定讓Integer對象都是只讀對象,也即在計算a=a+b后,對象a引用的是一個新的對象,

12、而非改a所指對象的值。騰訊軟件測試筆試題騰訊軟件測試筆試題??紤]到性能問題,我們又引入兩種優(yōu)化方案:(1)對于數(shù)值相等的Integer對象,我們不會重復創(chuàng)建。例如,計算“1+1”,這里兩個“1”的引用的是同一個對象這種設計模式叫做;(2)腳本語言解析器啟動時,默認創(chuàng)建數(shù)值范圍1,32的32個Integer對象?,F(xiàn)在,假設我們要計算表達式“1+2+3+40”,在計算過程需要創(chuàng)建的Integer對象個數(shù)是。6、甲、乙兩個人在玩猜數(shù)字游戲,甲隨機寫了一個數(shù)字,在1,100區(qū)間之內(nèi),將這個數(shù)字寫在了一張紙上,然后乙來猜。如果乙猜的數(shù)字偏小的話,甲會提示:“數(shù)字偏小”一旦乙猜的數(shù)字偏大的話,甲以后就再也

13、不會提示了,只會回答“猜對 或 猜錯”問: 乙至少猜 多少次 猜可以準確猜出這個數(shù)字,在這種策略下, 乙猜的第一個數(shù)字是 。7、仔細閱讀以下函數(shù)Int fuc(int m,int n)if(m%n)=0return n;elsereturn fuc(n,m%n)請問func(20XX,2102)的結果是( )。加分題:1、給定一個數(shù)組aN,我們希望構造數(shù)組bN,其中bi=a0*a1*.*aN-1/ai。在構造過程:不允許使用除法;要求O(1)空間復雜度和O(n)時間復雜度;除遍歷計數(shù)器與aN bN外,不可使用新的變量(包括棧臨時變量、對空間和全局靜態(tài)變量等);請用程序?qū)崿F(xiàn)并簡單描述。2、20世

14、紀60年代,美國心理學家米爾格蘭姆設計了一個連鎖信件實驗。米爾格蘭姆把信隨即發(fā)送給住在美國各城市的一部分居民,信中寫有一個波士頓股票經(jīng)紀人的名字,并要求每名收信人把這封信寄給自己認為是比較接近這名股票經(jīng)紀人的朋友。這位朋友收到信后再把信寄給他認為更接近這名股票經(jīng)紀人的朋友。最終,大部分信件都寄到了這名股票經(jīng)紀人手中,每封信平均經(jīng)受6.2詞到達。于是,米爾格蘭姆提出六度分割理論,認為世界上任意兩個人之間建立聯(lián)系最多只需要6個人。假設QQ號大概有10億個注冊用戶,存儲在一千臺機器上的關系數(shù)據(jù)庫中,每臺機器存儲一百萬個用戶及其的好友信息,假設用戶的平均好友個數(shù)大約為25人左右。第一問:請你設計一個方

15、案,盡可能快的計算存儲任意兩個QQ號之間是否六度(好友是1度)可達,并得出這兩位用戶六度可達的話,最短是幾度可達。第二問:我們希望得到平均每個用戶的n度好友個數(shù),以增加對用戶更多的了解,現(xiàn)在如果每臺機器一秒鐘可以返回一千條查詢結果,那么在10天的時間內(nèi),利用給出的硬件條件,可以統(tǒng)計出用戶的最多幾度好友個數(shù)?如果希望得到更高的平均n度好友個數(shù),可以怎樣改進方案?3、段頁式虛擬存儲管理方案的特點。參考答案選擇題:A。原式=x2 * (x4 + 4 * x2 + 2*x) + x + 1,x2用一次乘法,x4看成是(x2)2,這樣用掉第二次乘法,外面的x2 * 是第三次乘法,所有常系數(shù)乘法都展開成連

16、加。A。一開始覺得A肯定不對,因為會溢出,但不知道其實正如微機原理課上原的,溢出會有標識位,連加減的時候會考慮到這個標識位的作用,這樣A就對了。A。死代碼是指永遠不會執(zhí)行到的代碼,不是注釋,比如if(0),大括號里的就是死代碼。D。共享內(nèi)存銷毀了,會對其他正在使用這段內(nèi)存的進程造成破壞。A。A走到B共需要12步,其中7步必須向右,5步必須向上,但次序可以不同,因此是C(7,12),要求P不能走,那么走到P的可能次數(shù)是C(3,6),從P走到B的可能次數(shù)是C(4,6),因此結果是C(7,12) C(3,6)*C(4,6)=492。D。除了加密以外,剩下的事情在第一個10分鐘內(nèi)可以并發(fā)完成。C。快排

17、選主元會打亂原次序。C。A當數(shù)據(jù)完全有序時就是O(n),B當數(shù)退化成線性表時(只有一叉時)出現(xiàn),C快排只對無序、隨機序列有優(yōu)勢。D是對的。D。長度1的子序列有10-2-1-1=6個,長度2子序列有9-1=8個,長度3有8個,長度4有7個長度10有1個,加起來就是50。C??ㄌ靥m數(shù),C(n,2n)/(n+1),n是入棧元素的個數(shù),這里n=3,C(3,6)/4=5,同學彼此是不同的,因此要全排列一下,結果為5*3!*3!=180。填空題:4813。61。這個有規(guī)律的,只要耐心一點就行了,ack(1,x)=2+x,ack(2,x)=3+x*2,ack(3,0)=5,ack(3,1)=ack(3,0)

18、*2+3=13,ack(3,2)=ack(3,1)*2+3=29,ack(3,3)=ack(3,2)*3+2=61。不會。ORDER BY; LIMIT享元模式,40。1到7以及他們的和是不用創(chuàng)建的,從8開始,28(是1到7的和)+8=36,36需要創(chuàng)建,36+9=45,45需要創(chuàng)建依次類推,在加數(shù)是32之前(含32)需要創(chuàng)建的對象是32-8+1=25,某數(shù)+32=某數(shù)之后33至40所表示的加數(shù)也要創(chuàng)建,這樣有8個加數(shù) + 8個和,共有16個數(shù)需要創(chuàng)建,注意,加數(shù)中包含36,這個我們已經(jīng)創(chuàng)建了,所以有25+8+8-1=40個數(shù)的對象需要創(chuàng)建。14次,第一次猜測數(shù)字為14。思想是:每次猜大后,嘗

19、試猜測的總次數(shù)是相等的。第一次猜測時,在1到100之間選擇某個數(shù)N1后,有三種情況,一是直接選中了,這個概率比較小,對研究沒有意義,二是選擇偏大了,這時不再提示了,只能在1至N1-1之間一個一個地選了,三是選擇偏小了,這時還有提示,可以繼續(xù)在N1+1,100中選擇另外的數(shù)N2。可以知道,若第一次就猜錯了,那么嘗試總次數(shù)是N1-1+1=N1次(因為是在1,N1-1之間逐一取值,且N1本身用掉一次),若第一次猜得偏小,但第二次猜大了,嘗試總次數(shù)是N1+1,N2-1的元素個數(shù)加2(加2是N2和N1本身猜用掉一次),即為N2-N1+1次,根據(jù)思想“每次猜錯后,嘗試猜測的總次數(shù)相等”,有N1=N2-N1

20、+1,可知N2=2N1-1,增量為N1-1。騰訊軟件測試筆試題自我介紹。類似地,前兩次猜得偏小,但第三次猜大,嘗試總次數(shù)為N2+1,N3-1的元素個數(shù)加3,即N3-N2+2,那么有N3-N2+2=N1,N3=N2+N1-2,增量為N1-2依此類推,增量是隨著猜測次數(shù)的增加而逐1地減少。設最后一次猜測為k,則Nk=N1+(N1-1)+(N1-2)+1,Nk是等于或大于100的第一個數(shù),根據(jù)等差數(shù)列求和公式可以算出N1=14,N2=27,N3=39(14,27,39,50,60,69,77,84,90,95,99)。2。遞歸。騰訊軟件測試筆試題(三)一 不定項選擇題(共25題,每題4分,共100分

21、,少選、錯選、多選均不得分)1 已知一棵二叉樹,如果先序遍歷的節(jié)點順序是:ADCEFGHB,中序遍歷是:CDFEGHAB,則后序遍歷結果為:(D)A.CFHGEBDA B.CDFEGHBA C.FGHCDEBA D.CFHGEDBA2 下列哪兩個數(shù)據(jù)結構,同時具有較高的查找和刪除性能?(CD)A.有序數(shù)組 B.有序鏈表 C.AVL樹 D.Hash表3 下列排序算法中,哪些時間復雜度不會超過nlogn?(BC)A.快速排序 B.堆排序 C.歸并排序 D.冒泡排序4 初始序列為1 8 6 2 5 4 7 3一組數(shù)采用堆排序,當建堆(小根堆)完畢時,堆所對應的二叉樹中序遍歷序列為:(A)A.8 3

22、2 5 1 6 4 7B.3 2 8 5 1 4 6 7C.3 8 2 5 1 6 7 4D.8 2 3 5 1 4 7 65 當n=5時,下列函數(shù)的返回值是:(A)cpp view plaincopyint foo(int n)if(n2)return n;return foo(n-1)+foo(n-2);A.5 B.7 C.8 D.106 S市A,B共有兩個區(qū),人口比例為3:5,據(jù)歷史統(tǒng)計A的犯罪率為0.01%,B區(qū)為0.015%,現(xiàn)有一起新案件發(fā)生在S市,那么案件發(fā)生在A區(qū)的可能性有多大?(C)A.37.5% B.32.5% C.28.6% D.26.1%7 Unix系統(tǒng)中,哪些可以用于

23、進程間的通信?(BCD)A.Socket B.共享內(nèi)存 C.消息隊列 D.信號量8 靜態(tài)變量通常存儲在進程哪個區(qū)?(C)A.棧區(qū) B.堆區(qū) C.全局區(qū) D.代碼區(qū)9 查詢性能(B)A. 在Name字段上添加主鍵B. 在Name字段上添加索引C. 在Age字段上添加主鍵D. 在Age字段上添加索引1IP地址1是一個(B)類IP地址。A.A B.B C.C D.D11 下推自動識別機的語言是:(C)A. 0型語言 B.1型語言 C.2型語言 D.3型語言12 下列程序的輸出是:(D)cpp view plaincopy#define add(a+b) a+bint main

24、printf(“%d ”,5*add(3+4);return 0;A.23 B.35 C.16 D.1913 瀏覽器訪問某頁面,HTTP協(xié)議返回狀態(tài)碼為403時表示:(B)A 找不到該頁面B 禁止訪問C 內(nèi)部服務器訪問D 服務器繁忙14 如果某系統(tǒng)15*4=112成立,則系統(tǒng)采用的是(A)進制。A.6 B.7 C.8 D.915 某段文本中各個字母出現(xiàn)的頻率分別是a:4,b:3,o:12,h:7,i:10,使用哈夫曼編碼,則哪種是可能的編碼:(A)A a(000) b(001) h(01) i(10) o(11)B a(0000) b(0001) h(001) o(01) i(1)C a(00

25、0) b(001) h(01) i(10) o(00)D a(0000) b(0001) h(001) o(000) i(1)16 TCP和IP分別對應了OSI中的哪幾層?(CD)A Application layerB Presentation layerC Transport layerD Network layer17 一個棧的入棧序列是A,B,C,D,E,則棧的不可能的輸出序列是?(C)A.EDCBA B.DECBA C.DCEAB D.ABCDE18 同一進程下的線程可以共享以下?(BD)A. stack B.data section C.register set D.file fd

26、19 對于派生類的構造函數(shù),在定義對象時構造函數(shù)的執(zhí)行順序為?(D)1:成員對象的構造函數(shù)2:基類的構造函數(shù)3:派生類本身的構造函數(shù)A.123 B.231 C.321 D.2132如何減少換頁錯誤?(BC)A 進程傾向于占用CPUB 訪問局部性(locality of reference)滿足進程要求C 進程傾向于占用I/OD 使用基于最短剩余時間(shortest remaining time)的調(diào)度機制21 遞歸函數(shù)最終會結束,那么這個函數(shù)一定?(B)A 使用了局部變量B 有一個分支不調(diào)用自身C 使用了全局變量或者使用了一個或多個參數(shù)D 沒有循環(huán)調(diào)用22 編譯過程中,語法分析器的任務是(B

27、)A分析單詞是怎樣構成的B 分析單詞串是如何構成語言和說明的C 分析語句和說明是如何構成程序的D 分析程序的結構23 同步機制應該遵循哪些基本準則?(ABCD)A.空閑讓進 B.忙則等待 C.有限等待 D.讓權等待24 進程進入等待狀態(tài)有哪幾種方式?(D)A CPU調(diào)度給優(yōu)先級更高的線程B 阻塞的線程獲得資源或者信號C 在時間片輪轉(zhuǎn)的情況下,如果時間片到了D 獲得spinlock未果25 設計模式中,屬于結構型模式的有哪些?(BC)A 狀態(tài)模式 B 裝飾模式 C 代理模式 D 觀察者模式填空題(共4題10個空,每空2分,共2分)1 設有字母序列Q,D,F,X,A,P,N,B,Y,M,C,W,請

28、寫出按二路歸并方法對該序列進行一趟掃描后的結果為DQFXAPBNMYCW。2 關鍵碼序列(Q,H,C,Y,Q,A,M,S,R,D,F,X),要按照關鍵碼值遞增的次序進行排序,若采用初始步長為4的Shell的排序法,則一趟掃描的結果是QACSQDFXRHMY;若采用以第一個元素為分界元素的快速排序法,則掃描一趟的結果是FHCDQAMQRSYX。3 二進制地址為011011110000,大小為(4)10和(16)10塊的伙伴地址分別為:_,_。4 設t是給定的一棵二叉樹,下面的遞歸程序count(t)用于求得:二叉樹t中具有非空的左、右兩個兒子的結點個數(shù)N2;只有非空左兒子的個數(shù)NL;只有非空右兒

29、子的結點個數(shù)NR和葉子結點個數(shù)N0。N2,NL,NR、N0都是全局量,且在調(diào)用count(t)之前都置為0。cpp view plaincopytypedef struct nodeint data;struct node *lchild,*rchild;node;int N2,NL,NR,N0;void count(node *t)if (t-lchild!=NULL)if (t-rchild!=NULL) N2+;else NL+;else if (t-rchild!=NULL) NR+;else N0+;if(t-lchild!=NULL) count(t-lchild);if(t-rc

30、hild!=NULL) count(t-rchild);/* call form :if(t!=NULL) count(t);*/.直接插入排序原理:將數(shù)組分為無序區(qū)和有序區(qū)兩個區(qū),然后不斷將無序區(qū)的第一個元素按大小順序插入到有序區(qū)中去,最終將所有無序區(qū)元素都移動到有序區(qū)完成排序。要點:設立哨兵,作為臨時存儲和判斷數(shù)組邊界之用。實現(xiàn):Void InsertSort(Node L,int length)Int i,j;/分別為有序區(qū)和無序區(qū)指針for(i=1;i<length;i+)/逐步擴大有序區(qū)j=i+1;if(Lj<Li)L0=Lj;/存儲待排序元素While(L0<Li

31、)/查找在有序區(qū)中的插入位置,同時移動元素Li+1=Li;/移動i-;/查找Li+1=L0;/將元素插入i=j-1;/還原有序區(qū)指針2.希爾排序原理:又稱增量縮小排序。先將序列按增量劃分為元素個數(shù)相同的若干組,使用直接插入排序法進行排序,然后不斷縮小增量直至為1,最后使用直接插入排序完成排序。要點:增量的選擇以及排序最終以1為增量進行排序結束。實現(xiàn):Void shellSort(Node L,int d)While(d>=1)/直到增量縮小為1Shell(L,d);d=d/2;/縮小增量Void Shell(Node L,int d)Int i,j;For(i=d+1;i<leng

32、th;i+)if(Li<Li-d)L0=Li;j=i-d;While(j>0&&Lj>L0)Lj+d=Lj;/移動j=j-d;/查找Lj+d=L0;交換排序1.冒泡排序原理:將序列劃分為無序和有序區(qū),不斷通過交換較大元素至無序區(qū)尾完成排序。要點:設計交換判斷條件,提前結束以排好序的序列循環(huán)。實現(xiàn):Void BubbleSort(Node L)Int i ,j;Bool ischanged;/設計跳出條件For(j=n;j<0;j-)ischanged =false;For(i=0;i<j;i+)If(Li>Li+1)/如果發(fā)現(xiàn)較重元素就向后移動Int temp=Li;Li=Li+1;Li+1=temp;Ischanged =true;If(!ischanged)/若沒有移動則說明序列已經(jīng)有序,直接跳出Break;2.快速排序原理:不斷尋找一個序列的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論