久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Java怎么將節點轉化為兩兩合并

159次閱讀
沒有評論

共計 1261 個字符,預計需要花費 4 分鐘才能閱讀完成。

本篇內容主要講解“Java 怎么將節點轉化為兩兩合并”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“Java 怎么將節點轉化為兩兩合并”吧!

/**
 *
 *  轉化為兩兩合并
 */
public class ReverseKGroup { public static void main(String[] args) { ListNode l1 = new ListNode(1);
 ListNode n1 = new ListNode(3);
 ListNode n2 = new ListNode(4);
 ListNode n3 = new ListNode(5);
 l1.next = n1;
 n1.next = n2;
 n2.next = n3;
 ReverseKGroup mt = new ReverseKGroup();
 ListNode head = mt.reverseKGroup(l1,2);
 Utils.print(head);
 }

 public ListNode reverseKGroup(ListNode head, int k) { if (k == 1 || head == null || head.next == null)  return head;  ListNode preHead = new ListNode(-1);  preHead.next = head;  ListNode first = head, last = head;  ListNode preGroup = preHead, nextGroup = preHead;  int count = 1;  while (last != null) { if (count == k) { // 當滿足 k 個組合時進行翻轉  nextGroup = last.next; // 下一個組合的首節點  reverseList(first, last);  preGroup.next = last; // 翻轉之后 last 已經是首節點  preGroup = first; //preGroup 設置自己為最末, 此后 first 繼續下一個組合, 采用 preGroup 的深意, 是不打擾 first 繼續下一個組合
 private void reverseList(ListNode head, ListNode tail) { ListNode pre = new ListNode(-1), node = head;  pre.next = head;  while (pre != tail) {  ListNode temp = node.next;  node.next = pre;  pre = node;  node = temp;  }  }
}

到此,相信大家對“Java 怎么將節點轉化為兩兩合并”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-16發表,共計1261字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 达尔| 都兰县| 开江县| 张家川| 内丘县| 慈利县| 宁河县| 定兴县| 刚察县| 贵南县| 宝清县| 饶平县| 准格尔旗| 福州市| 磐安县| 陆川县| 邵东县| 延庆县| 邵武市| 深水埗区| 从化市| 泊头市| 梨树县| 宝应县| 石渠县| 江安县| 普宁市| 云和县| 台南市| 松溪县| 甘肃省| 渭源县| 雷山县| 浑源县| 临潭县| 红原县| 固始县| 图木舒克市| 卓资县| 宁陵县| 华安县|