Skip to content

Instantly share code, notes, and snippets.

@shixiaoyu
Last active August 29, 2015 14:05
Show Gist options
  • Save shixiaoyu/27779dfc62ebd7445821 to your computer and use it in GitHub Desktop.
Save shixiaoyu/27779dfc62ebd7445821 to your computer and use it in GitHub Desktop.
public static void main(String[] args){
List list1 = new LinkedList();
list1.add(0);
list1.add(new LinkedList<Integer>());
list1.add(1);
list1.add(new LinkedList<Integer>());
List list2 = new LinkedList();
list2.add(list1);
list2.add(2);
List<Integer> newList = new LinkedList<Integer>();
DeepIterator di = new DeepIterator(list2);
while(di.hasNext()) {
newList.add(di.next());
}
// Use assert if you want
System.out.println(String.format("newList size is %d, expcted 3", newList.size()));
list1 = new LinkedList();
newList = new LinkedList<Integer>();
di = new DeepIterator(list1);
while(di.hasNext()) {
newList.add(di.next());
}
// assertTrue(newList.size() == 0);
System.out.println(String.format("newList size is %d, expcted 0", newList.size()));
list1 = new LinkedList();
list1.add(new LinkedList<Integer>());
list1.add(1);
list1.add(new LinkedList<Integer>());
list2 = new LinkedList();
list2.add(list1);
list2.add(2);
List<Integer> list3 = new LinkedList<Integer>();
list3.add(3);
list3.add(4);
list3.add(5);
List list4 = new LinkedList();
list4.add(list2);
list4.add(list3);
newList = new LinkedList<Integer>();
di = new DeepIterator(list4);
while(di.hasNext()) {
newList.add(di.next());
}
// assertTrue(newList.size() == 5);
System.out.println(String.format("newList size is %d, expcted 5", newList.size()));
/**
----> 5
|
---- 3 -> 4 -> L -> 6
|
1 -> 2 -> L -> 7-> 8
*/
list3 = new LinkedList<Integer>();
list3.add(3);
list2 = new LinkedList<Integer>();
list2.add(2);
list2.add(list3);
list2.add(4);
list1 = new LinkedList<Integer>();
list1.add(1);
list1.add(list2);
list1.add(5);
list1.add(6);
di = new DeepIterator(list1);
newList = new LinkedList<Integer>();
while(di.hasNext()) {
newList.add(di.next());
}
System.out.println(String.format("newList size is %d, expcted 6", newList.size()));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment