当前位置: 首页 > 知识库问答 >
问题:

给出大小分别为n和m的两个列表V1和V2。返回两个列表共有的元素列表,并按排序顺序返回列表

司空高义
2023-03-14
class Solution {
    public static ArrayList<Integer> common_element(ArrayList<Integer>v1, ArrayList<Integer>v2) {
        ArrayList<Integer> com = new ArrayList<>();
        Collections.sort(v1);
        Collections.sort(v2);
        
        int i = 0;
        int j = 0;
        while (i < v1.size() && j < v2.size()) {
            if (v1.get(i) == v2.get(j)) {
                com.add(v1.get(i));
                i++;
                j++;
            } else if (v1.get(i) > v2.get(j)) {
                j++;
            } else {
                i++;
            }
        }
        return com;
    }
}

问题描述:
重复项可能在输出列表中。
我的代码有什么问题。当我运行它时,它会很容易地成功编译,但当我提交代码时,它显示不工作,就像我的代码输出是错误的一样。
但它失败的地方,我无法理解。谁能帮我知道这个...!

共有1个答案

凌联
2023-03-14

如果你是在线提交的,请阅读规则大多数在线比赛要求你的解决方案具有从文件或控制台读取输入并以特定格式输出的主方法。除此之外,您的解决方案看起来还可以。

 类似资料:
  • 我有一个算法包含以下情况;我想知道是否有可能有所改进(我认为不可能,但我可能错了)。 我有一个对象列表。我有两个不同的(独立的)键来对它们进行排序:和。实际上,我可以在算法开始时以两种方式对列表进行排序,而无需花费大量成本;因此,我有两份清单: (Python语法,但我认为任何人都能理解)。在这个阶段,只要复杂性保持在O(nlogn)以下,我完全可以做更多的事情(初始化新变量)。 我需要提取的许多

  • 问题内容: 有没有什么术语可以返回表的前两个表而 又不 知道字段 名 ? 就像是 还是我必须走很长的路要走,首先要找出列名?我该怎么做? 问题答案: 您必须先获取列名称。大多数平台都支持:

  • 这工作正常: 我得到了一个非常好的JSON数组和对象。 现在的问题是,我喜欢将我的数据作为有效载荷放入响应中,以便能够设置标头和状态,或者返回一个错误对象作为有效载荷。但是不管用。 Mai 16,2012 7:00:35 PMorg.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor写响应错误消息警告:未找到响应类ArrayList的消息正文编写器。

  • 问题内容: 让 假设我要对列表中每个列表的索引元素求和,例如在矩阵列中添加数字以获得单个列表。我假设数据中的所有列表的长度均相等。 如何遍历列表列表而不会出现索引超出范围错误?也许lambda?谢谢! 问题答案: 您可以尝试以下方法: 这里使用的组合和解压的列表,然后根据自己的索引压缩的项目。然后,您可以使用列表推导来遍历相似索引的组,对其进行求和并返回其“原始”位置。 为了更清楚一点,下面是迭代

  • 知乎远程面试要求编程 尾递归 def _recursion_merge_sort2(l1, l2, tmp): if len(l1) == 0 or len(l2) == 0: tmp.extend(l1) tmp.extend(l2) return tmp else: if l1[0] < l2[0]: tmp.append(l1[0])