您好,登錄后才能下訂單哦!
本篇文章為大家展示了LinkedList如何在java項目中運用 ,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
java LinkedList的實例詳解
實例代碼:
public class LinkedList<E> implements List<E>, Deque<E> { Node<E> first; Node<E> last; int size; public boolean add(E e) { final Node<E> l = last; final Node<E> newNode = new Node<>(l, e, null); last = newNode; if (l == null) first = newNode; else l.next = newNode; size++; modCount++; return true; } private static class Node<E> { E item; Node<E> next; Node<E> prev; Node(Node<E> prev, E element, Node<E> next) { this.item = element; this.next = next; this.prev = prev; } } }
單鏈表反轉:
/** * 遞歸,在反轉當前節(jié)點之前先反轉后續(xù)節(jié)點 */ public static Node reverse(Node head) { if (null == head || null == head.getNextNode()) { return head; } Node reversedHead = reverse(head.getNextNode()); head.getNextNode().setNextNode(head); head.setNextNode(null); return reversedHead; } /** * 遍歷,將當前節(jié)點的下一個節(jié)點緩存后更改當前節(jié)點指針 * */ public static Node reverse2(Node head) { if (null == head) { return head; } Node pre = head; Node cur = head.getNextNode(); Node next; while (null != cur) { next = cur.getNextNode(); cur.setNextNode(pre); pre = cur; cur = next; } //將原鏈表的頭節(jié)點的下一個節(jié)點置為null,再將反轉后的頭節(jié)點賦給head head.setNextNode(null); head = pre; return head; }
對于數(shù)組問題,一般我們要新建數(shù)組,必要時移動下標
上述內(nèi)容就是LinkedList如何在java項目中運用 ,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。