如何使用锯齿状数组或指针数组在Java中实现Rootish数组堆栈数据结构

时间:2015-09-13 10:50:10

标签: java arrays data-structures stack

基本上我只是想知道如何获得一个包含另一个数组的数组,我可以收缩它或增长它,例如A {a,b,c,d} a {0},b {1, 2} c {3,4,5} d {6,7,8,9}。如果我想在其中添加另一个整数,那么我可以增长它A {a,b,c,d,e} a {0},b {1,2} c {3,4,5} d {6, 7,8,9} java中的{10}。

Rootish Array Stack基本上就像数组一样,以我上面提到的方式存储数组......

我尝试使用锯齿状阵列,但我无法增长或缩小它

1 个答案:

答案 0 :(得分:1)

这只是一个List of List。您可以从下面的示例代码中获取帮助。添加/删除元素时,List的大小可以增加或减少。

List<List<Integer>> listOfLists = new ArrayList<List<Integer>>();
import java.util.ArrayList;
import java.util.List;

public class ListOfLists {

  public static void main(String args[]) {
    List<List<Integer>> listOfLists = new ArrayList<List<Integer>>();

    List<Integer> aList = new ArrayList<Integer>();
    List<Integer> bList = new ArrayList<Integer>();
    List<Integer> cList = new ArrayList<Integer>();
    List<Integer> dList = new ArrayList<Integer>();

    aList.add(0);
    bList.add(1); bList.add(2);
    cList.add(3); cList.add(4); cList.add(5);
    dList.add(6); dList.add(7); dList.add(8); dList.add(9);

    listOfLists.add(aList);
    listOfLists.add(bList);
    listOfLists.add(cList);
    listOfLists.add(dList);

    for (List<Integer> list : listOfLists) {
      for (Integer i : list) {
        System.out.print(i + "\t");
      }
      System.out.println();
    }
  }
}