zoukankan      html  css  js  c++  java
  • [LadyGaGa]竟然遇到了错误的笔试题

    有个题目:将字符串str1从字符串str2中完全删除,用C#实现

    我问了是不是用代码实现,得到的反馈是,我的答案很简单:

    if(String.IsEmptyOrNull(str1)) return;

    if(String.IsEmptyOrNull(str2)) return;

    str2=str2.Replace(str1,String.Empty);

    对方问我这种方法能否把所有的字串给replace掉,我当时小懵了一下。因为我不确定replace是全部还是遇到第一个匹配的就replace后就返回。

    我就回答,可以用递归。

    于是让我用递归来做:

    public void Replace(ref string str1, ref string str2)
    {
      

    if(String.IsEmptyOrNull(str1)) return;

    if(String.IsEmptyOrNull(str2)) return;

    if(str2.IndexOf(str1)==-1) return;
    else str2=str2.Replace(str1,String.Empty);

    Replace(ref str1,ref str2);
    }

    各位看官估计能够看出,这个办法是可行的。

    但是结果是,我试了我第一个方法,也是可能的。

    到现在我就明白了,他们是想让人实现String的Replace原理,结果却出错了。其实简单,题目要求里禁止用自带的方法或者实现string的replace代码。

  • 相关阅读:
    常见模块和包
    二分查找算法
    常见内置函数
    Django总目录
    nginx配置站点
    Arduino语言
    Python连接Arduino的方法
    机器人学习
    Redis
    arduino总目录
  • 原文地址:https://www.cnblogs.com/diggingdeeply/p/Funny_interview_testing.html
Copyright © 2011-2022 走看看