2011淘宝春季实习生招聘笔试题

转自:http://hi.baidu.com/346248129/blog/item/d59d283d6e5f4015baa16790.html

转载请标明出处~3Q

1. A,B两机器用千兆网传输,A上每个页面是1K字节,则B机器下载的限制是()

千兆网指的是 1000Mb每秒也就是 1000/8 MB = 125MB的速度,1K字节为1KB 所以应为 100 000左右(不知道对不对)

2. 已知单链表,把节点q插入到节点p的操作是()
q->link = p->link; p->link = q
3. 用矩形表示世界上的每个国家,最少用()种颜色表示,使得共有边界的两个国家不会重色。
4种,地图的四色定理,但是由于条件比较特殊,国家是矩形,所以笔试时尝试了下,发现3种确实无法实现,选4种
4.快速排序的平均时间复杂度是O(nlgn),最坏的情况是O(n^2),什么时候会出现O(n^2)
数组基本有序

5. int i,j,*p;p=&i;问一下哪个表达式是把j赋给i()
*p=*&j;
6. #define F(a,b) a*b,则 F(3+6, 8-5)= ()
46,define是直接替代
7. 一个栈,进栈顺序为1,2,3,…,1—n,n,最先出栈的元素是n,那么第i个出栈的元素是()
 N-i+1,栈是先进后出,既然最先出的是最后一个元素,那么答案就唯一了
8.树的后序遍历是ABC+*DE/-,中序遍历是,A*B+C-D/E,那么前序遍历是()

-*A+BC/DE

二、填空题
1.用数组保存数据,删除一个元素的平均需要移动元素的次数((1/2)(n-1))
2.求一个元素全为正数的数组中的次大元素的程序填空题,其中num >=2

int f(int *a, int num)

{

  int number = a[0];

  int result = 0;(=0是所填空)

  for(int i=1; i<num; ++i)

  {

    if(a[i] > number)

    {

      result = number;(空)

      number = a[i];(空)

    }

    else if( a[i] > result)

    {

      result = a[i];(空)

    }

  }

  return result;

}
3.下述函数输入9999,结果是(8)
Int Fun(int x)
{
    int countx = 0;
    whike(x)
    {
         countx++;
         x = x & (x-1);
     }
 return countx;
}

很简单,其实把9999化成2进制,看有几个1就是答案了
4. int a[3][2] = {1,2,3,4,5,6}, int *p[3], p[0] = a[1];

问 *(p[0]+1)是几

4, p[0]指向的位置是 a[1][0],p[0]+1指向的位置自然是a[1][1]啦~

三、综合题
1. 有7000g的大米,50克和200克的砝码,要称出1350g,最小需要称几次?
3次

3次的最佳方案是 ,先拿7000和200分出 一份3400,一份3600

‍然后平分3600得到1800

然后 3400-(1800+200+50) = 1350


2. N个鸡蛋放到M个篮子中,每个篮子中至少放一个,要满足的条件:输入任意一个不大于N的正整数,总有某几个篮子中的鸡蛋数目之和与之相等。写一个函数,输入N,M,输出所有可能的鸡蛋放置情况

没什么太好的想法,个人觉得很难的一个题,实在不行就遍历枚举吧,也算是一种方法

回去之后再好好想想这个题(笔者没有想法,有想法的欢迎留言~)


 

转自:http://blog.sina.com.cn/s/blog_4709bd4d0100s31f.html#comment

 

一、选择题

 

1. AB两机器用千兆网传输,A上每个页面是1K字节,则B机器下载的限制是()

 

千兆网指的是可以传输1000Mbit/s,答案是:1000M/(1024*8) = 100000bit/s

 

2. 单链表,已知p->link指向p的下一个节点,q指向一个新的节点,把q插入到p之后的操作是()

 

q->link = p->link; p->link = q

 

3. 用矩形表示世界上的每个国家,最少用()种颜色表示,使得相邻的两个国家不会重色。

 

3

 

4.快速排序在通常情况下时间复杂度是Onlgn),在()情况下是On2

 

数组基本排好序的情况

 

5. int i,j=2,int *p=&i把正确的实现i=j的是(*p=*&j)

int i,j=2,*j=i=j

 

6. #define F(a,b) a*b, F3+6 8-5= ()

46

 

7. 一个栈,1n,最先出栈的元素是n,那么第i个出栈的元素是()

n-i+1

 

8.二叉树遍历题,答案记着D。前序

 

二、填空题

1.数组中删除元素的平均移动次数

(n-1)/2

.求数组中的次大元素的程序填空题。result=number;number=data[i];result=data[i];

 

.下述函数输入9999,结果是(8

 

Fun(int x)

{

    int countx = 0;

    whike(x)

    {

         countx++;

         x = x & (x-1);

     }

}

 

4. int a[3][2]={1,2,3,4,5,6};int *p[3];p[0]=a[1];printf("%d",*(p[0]+1));,结果是4

 

三、综合题

 

 

1. 7公斤的的米,50200的砝码,要称出1350g米,最小需要称几次?3次。

第一次:200+50,称出250g

第二次:200+250,称出450

第三次:200+450,称出650

共称出1350g

2. N个鸡蛋放到M个篮子中,每个篮子中至少放一个,要满足的条件:输入任意一个不大于N的正整数,总有某几个篮子中的鸡蛋数目之和与之相等。写一个函数,输入N,M,输出所有可能的鸡蛋放置情况

本人的做法:按二进制中的1的位置进行存放, M的范围[logN,N]

 

 

.评论数据处理问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值