【明天动手】BD面试题

今天SY回来给我讲了下百度面试的两道题,第一道题是关于m跟球队,n个球队出线需要至少多少分?具体可见:http://blog.sina.com.cn/s/blog_46e25d670100nx4u.html

第二个是:两个有序的存储数字的数组,长度分别为m和n,要求合并两个形成新的字符串,并且新的字符串中不能有重复的数字。SY跟我说了一种时间复杂度为o(m+n)的。

就是用两个指针分别指向两个字符串,然后比较。

然后SY说了,如果其中一个数组中本来就有重复的数字呢?然后我又上网查了下,

先一分析分析 "老迈 "给出的那个 "简洁 "算法:
void   RemoveSame(int   value[],   int   &num)
{
        int     k=0;
        for(int   i=1;   i <num;   i++)
        {
                if(value[i]   !=   value[i-1])
                {
                        value[++k]   =   value[i];
                }
        }
        num   =   ++k;
}
问题一:
函数接口参数不妥:
void   RemoveSame(int   value[],   int   &num)
用int   &num作为数组大小的参数,并将去掉重复数后数组大小值通过num回传给用户.
这样不妥,限制了调用RemoveSame()时,第2个参数必须是一个变量,如果是常量则不行,比如:
RemoveSame(source,   sizeof(source)/sizeof(int));或RemoveSame(source,   5)这样调用这不行.但在实践中用户想如上调用ReomveSame()函数的时候是很多的.
RemoveSame()函数修改了传入参数num,但实际应用中,用户往往不候这个参数被修改.
所以,RemoveSame()函数原型最好这样:
int   unique(int   source[],   int   length);
或int   unique(int   source[],   size_t   length);

问题二
函数名RemoveSame()是典型的 "Chinese-English ",且第一个字母按习惯不应大写.

问题三
对第个参数int   &num没有进行参数合法取值范围检测,当num   <=   0时,结果出错.

问题三
最坏情况下,当n个元素仅在最后一个元素出现重复时,将多运行n-1次赋值语句:value[++k]   =   value[i];

题外话:这类问题,首先想到的应该是用线型链表来解决,而不是数组.

(唉,总是不先思考,上网找答案,以后要避免)明天动手写程序!

转载于:https://www.cnblogs.com/applebunny/archive/2012/07/12/2588831.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
华为销售类数字能源bd机考试题通常涵盖以下内容: 一、数字能源基础知识:考查对数字能源概念、发展趋势、应用场景等方面的理解。需要了解数字能源的特点、优势以及在不同行业中的应用。 二、华为数字能源产品知识:考查对华为数字能源产品的了解程度。要掌握华为数字能源产品的特点、功能、使用方法以及与竞品的比较等方面的知识。 三、数字能源销售技巧和方法:考查对数字能源销售过程中关键环节的掌握,如需求分析、解决方案设计、演示表达、谈判技巧等。 四、数字能源市场分析:考查对数字能源市场现状、竞争对手、市场趋势等方面的了解和分析能力。需要具备市场调研、竞争分析、市场定位等能力。 五、案例分析和解决方案设计:考查对实际案例的分析和解决问题的能力。需要从客户需求出发,结合华为数字能源产品特点和解决方案,设计出最合适的解决方案。 六、销售计划和业绩达成能力:考查对销售计划制定和实施的能力,包括目标设定、资源调配、销售策略制定等。 七、团队协作和沟通能力:考查对团队合作和沟通协作能力的理解和实践。需要具备良好的团队协作和沟通能力,与团队成员密切合作并达成共同目标。 综上所述,华为销售类数字能源bd机考试题主要考查对数字能源基础知识、华为产品知识、销售技巧方法、市场分析能力、案例分析和解决方案设计、销售计划和业绩达成能力以及团队协作和沟通能力的掌握程度。准备考试时,需深入了解以上内容并提前进行充分准备。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值