我说假如 2016-09-02 01:53 采纳率: 0%
浏览 3

请教之前遇到的一个面试题

你好,之前去面试,有遇到一个算法题,问题是这样的:有两个list,A和B,
分别存储了不同的姓名,并且按照姓的首字母进行排序。现在要把A和B合并
成为一个list,并且也要求要按照姓的首字母进行排序,当时准备不充分,
没有答上来,想请教下,这个编码题该怎么做, 或者给个思路也行

  • 写回答

1条回答 默认 最新

  • 赵烨 2016-09-02 02:14
    关注

    最简单的方法就是两个list直接拼接,然后排序,这个时间复杂度肯定不是最优的。
    最优的办法就是,两个指针下标给两个list,分别开始遍历,比较,哪个小,就加入到新list,并且下标加1。这样的时间复杂度是O(m+n)。

    评论

报告相同问题?

悬赏问题

  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥15 state显示变量是字符串形式,但是仍然红色,无法引用,并显示类型不匹配
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗