【问题标题】:what is the method equivalent to push_back (C++) in java?java中与push_back(C++)等效的方法是什么?
【发布时间】:2018-04-02 20:06:27
【问题描述】:

问题:最长递增子序列

// 输入:int[] a = {3,2,6,4,5,1};

vector<vector<int>> l(a.size());

l[0].push_back(a[0]);

for(int i = 1 ; i < a.size() ;i++){
    for(int j = 0 ; j < i ;++){
        if(a[i] > a[j] && l[i].size() < l[j].size()+1){
             l[i] = l[j];
        }
    }   
    l[i].push_back(a[i]); 
 }
  • 我想打印这个输出:

  •  3
    
  •  2 6 
    
  •  2 4  
    
  •  2 4 5 
    
  •  1
    
  •  //Thanks so much for Helping
    

【问题讨论】:

  • List.add()。去展示 C++ 方法名称是多么疯狂。想象一下,将推送到堆栈的概念与将其推送到何处的概念与添加到列表的概念混为一谈。
  • 文档可能值得一看

标签: java c++ methods


【解决方案1】:

回答标题行的问题:如果你使用java.util.Vector&lt;E&gt;,那么它就是addElement。这些将是 Java 中与您在问题中提到的 C++ 模板类最匹配的类和方法。

文档在这里:https://docs.oracle.com/javase/8/docs/api/java/util/Vector.html#addElement-E-

【讨论】:

  • 考虑到ArrayListvector 都不是线程安全的,我很确定ArrayList 会更接近。如果不需要线程安全,您链接到的文档甚至推荐 ArrayList
  • @chris ArrayList 从 Java 程序员的角度来看是更传统的选择。在这种情况下,我试图尽可能地匹配语法,因为这似乎是 OP 所寻求的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-28
  • 1970-01-01
  • 2015-04-25
  • 2013-06-03
  • 2019-06-26
  • 2010-11-27
  • 1970-01-01
相关资源
最近更新 更多