百度笔试题 [软件工程师]

来源:互联网 发布:惠普打印机驱动for mac 编辑:程序博客网 时间:2024/04/26 23:38

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



     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亿网页已经被我们存下来,并提供如下信息:网页全文(即网页的源码)、全文长度、网页正文(即网页中提取的主体文字)、  
     正文长度,以及其他网页提取物等,现在希望去掉其中的重复网页,请提出可行的方案,计算出每个网页对应的重复度,你可以自己  
     对网页重复下定义,也可以提出需要哪些更多的网页提取物来实现更好的去重复方案

原创粉丝点击