1、請實現兩棵樹是否相等的比較,相等返回,否則返回其他值,并說明算法復雜度。
數據結構為:
typedef struct_TreeNode{
char c;
TreeNode leftchild;
TreeNode rightchild;
}TreeNode;
函數接口為:int compTree(TreeNode tree1,TreeNode tree2);
注:A、B兩棵樹相等當且僅當Root-c==RootB--c,而且A和B的左右子樹相等或者左右互換相等。
2、寫一段程序,找出數組中第k大小的數,輸出數所在的位置。例如{2,4,3,4,7}中,第一大的數是7,位置在4。第二大、第三大的數都是4,位置在1、3隨便輸出哪一個均可。
函數接口為:int find_orderk(const int narry,const int n,const int k)
2'、已知一個字串由GBK漢字和ansi編碼的數字字母混合組成,編寫c語言函數實現從中去掉所有ansi編碼的字母和數字(包括大小寫),要求在原字串上返回結果。
函數接口為:int filter_ansi(char gbk_string)
注:漢字的GBK編碼范圍是0x8140-0xFEFE
百度筆試題(感謝網友lihan提供)
shury 發表于 2005-12-5 17:05:00
1)此題10分
對任意輸入的正整數N,編寫C程序求N!的尾部連續0的個數,并指出計算復雜度。如:18!=6402373705728000,尾部連續0的個數是3。
(不用考慮數值超出計算機整數界限的問題)
2)此題10分
編寫一個C語言函數,要求輸入一個url,輸出該url是首頁、目錄頁或者其他url
如下形式叫做首頁:
militia.info/
www.apcnc.com.cn/
http://www.cyjzs.comwww.greena888.com/
www.800cool.net/
http://hgh-products.my-age.net/
如下形式叫做目錄頁:
thursdaythree.net/greenhouses--gas-global-green-house-warming/
http://www.mw.net.tw/user/tgk5ar1r/profile/
http://www.szeasy.com/food/yszt/chunjie/
www.fuckingjapanese.com/Reality/
請注意:
a) url有可能帶http頭也有可能不帶
b)動態url(即含有?的url)的一律不算目錄頁,如:
www.buddhismcity.net/utility/mailit.php?l=/activity/details/3135/
www.buddhismcity.net/utility/mailit.php?l=/activity/details/2449/
另:如果你會linux,請用linux下的grep命令實現第2題的功能(附加5分)。
3)此題40分
如果必須從網頁中區分出一部分重要網頁(例如在10億中選8億),比其他網頁更值得展現給用戶,請提出一種方案。
4)此題40分
假設有10億網頁已經被我們存下來,并提供如下信息:網頁全文(即網頁的源碼)、全文長度、網頁正文(即網頁中提取的主體文字)、
正文長度,以及其他網頁提取物等,現在希望去掉其中的重復網頁,請提出可行的方案,計算出每個網頁對應的重復度,你可以自己
對網頁重復下定義,也可以提出需要哪些更多的網頁提取物來實現更好的去重復方案