色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java api隊(duì)列和棧

隊(duì)列和棧是數(shù)據(jù)結(jié)構(gòu)中常用的兩個(gè)操作,Java中也提供了相應(yīng)的API用來(lái)實(shí)現(xiàn)這兩個(gè)操作。隊(duì)列是一種先進(jìn)先出(FIFO)的數(shù)據(jù)結(jié)構(gòu),用于保存按照時(shí)間順序排列的元素。而棧是一種后進(jìn)先出(LIFO)的數(shù)據(jù)結(jié)構(gòu),用于保存最后插入的元素。

在Java中,使用隊(duì)列和棧最常用的API是LinkedList類。LinkedList類實(shí)現(xiàn)了List接口,也實(shí)現(xiàn)了Deque接口,Deque接口又繼承了Queue接口。因此,LinkedList既可以用作隊(duì)列,也可以用作棧。

//使用LinkedList類創(chuàng)建一個(gè)隊(duì)列
LinkedListqueue = new LinkedList<>();
queue.offer(1);  //入隊(duì)
queue.offer(2);
queue.offer(3);
int first = queue.poll();  //出隊(duì)
System.out.println(first);  //1
//使用LinkedList類創(chuàng)建一個(gè)棧
LinkedListstack = new LinkedList<>();
stack.push(1);  //壓入棧頂
stack.push(2);
stack.push(3);
int top = stack.pop();  //彈出棧頂
System.out.println(top);  //3

除了LinkedList類之外,Java還提供了ArrayDeque類,可以用來(lái)實(shí)現(xiàn)雙端隊(duì)列。雙端隊(duì)列是具有隊(duì)列和棧的特性的數(shù)據(jù)結(jié)構(gòu),也就是說(shuō)既可以從隊(duì)尾插入元素,也可以從隊(duì)頭插入元素。

//使用ArrayDeque類創(chuàng)建一個(gè)雙端隊(duì)列
ArrayDequedeque = new ArrayDeque<>();
deque.offerLast(1);  //從隊(duì)尾入隊(duì)
deque.offerLast(2);
deque.offerLast(3);
deque.offerFirst(4);  //從隊(duì)頭入隊(duì)
int first = deque.pollFirst();  //從隊(duì)頭出隊(duì)
int last = deque.pollLast();  //從隊(duì)尾出隊(duì)
System.out.println(first + "," + last);  //4,3

以上就是Java中實(shí)現(xiàn)隊(duì)列和棧的API介紹。開發(fā)者可以根據(jù)實(shí)際需求選擇合適的數(shù)據(jù)結(jié)構(gòu)和API來(lái)實(shí)現(xiàn)相應(yīng)的功能。