题目1
给定一个表L和另一个表P,它们包含以升序排列的整数。操作printLots(L,p)将打印L中的那些由P所指定的元素。例如,如果P=1,3,4,6,那么,L中位于第1,第3,第4,和第6个位置上的元素被打印出来。写出过程printLots(L,p)。
思路:使用public型的Collection API 容器操作。
这里写代码片
@
public static void<AnyType> printLots(List<AnyType> L, List<Integer>P)
{
Iterator<AnyType> iterL = L.iterator();
Iterator<Integer> iterP = P.iterator();
AnyType itemL = null;
Integer itemP = 0;
int start = 0; //遍历链表的起始位置
while(iterL.hasNext()&&iterP.hasNext())
{
itemP = iterP.next();
System.out.println("Looking for the position "+itemP);
//遍历链表。查找链表L中的由链表P中的整数元素所指定位置上的元素。
while(start<itemP&&iterL.hasNext())
{
start++;
itemL = iterL.next();
}
System.out.println(itemL);
}
}