当前位置: 首页 > news >正文

某公司网站源码体验营销案例

某公司网站源码,体验营销案例,网站内容检测,做手机网站哪家好概述 本文介绍了一种使用 ArrayList 和 Collections.reverse() 方法来实现链表反转的解决方案,虽然这种方法在空间复杂度上不是最优的,但代码简洁易懂。 实现思路 遍历原链表,将所有节点的值收集到 ArrayList 中使用 Collections.reverse() 方…

概述

本文介绍了一种使用 ArrayList 和 Collections.reverse() 方法来实现链表反转的解决方案,虽然这种方法在空间复杂度上不是最优的,但代码简洁易懂。

实现思路

  1. 遍历原链表,将所有节点的值收集到 ArrayList 中
  2. 使用 Collections.reverse() 方法反转 ArrayList
  3. 根据反转后的值列表重新构建链表

源码实现

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;public class ReverseNode {public ListNode reverseList(ListNode head) {if (head == null || head.next == null) {return head;}// 定义一个收集值的数组List<Integer> valList = new ArrayList<>();while (head.next != null) {valList.add(head.val);// 移动链表head = head.next;}// 加上最后一个节点的值valList.add(head.val);// 反转收集值Collections.reverse(valList);ListNode cursorNode = new ListNode();for (int index = 0; index < valList.size(); index++) {Integer val = valList.get(index);if (index == 0) {// 初始化头节点head = new ListNode(val);cursorNode = head;continue;}cursorNode.next = new ListNode(val);// 移动游标节点cursorNode = cursorNode.next;}return head;}static class ListNode {int val;ListNode next;ListNode() {}ListNode(int val) {this.val = val;}ListNode(int val, ListNode next) {this.val = val;this.next = next;}}public static void main(String[] args) {ReverseNode reverseNode = new ReverseNode();// 测试用例1:正常链表 1->2->3->4->5ListNode head1 = new ListNode(1);head1.next = new ListNode(2);head1.next.next = new ListNode(3);head1.next.next.next = new ListNode(4);head1.next.next.next.next = new ListNode(5);System.out.println("原链表1:");printList(head1);ListNode reversed1 = reverseNode.reverseList(head1);System.out.println("反转后:");printList(reversed1);System.out.println();// 测试用例2:单节点链表ListNode head2 = new ListNode(42);System.out.println("原链表2:");printList(head2);ListNode reversed2 = reverseNode.reverseList(head2);System.out.println("反转后:");printList(reversed2);System.out.println();// 测试用例3:空链表ListNode head3 = null;System.out.println("原链表3:");printList(head3);ListNode reversed3 = reverseNode.reverseList(head3);System.out.println("反转后:");printList(reversed3);System.out.println();// 测试用例4:两个节点的链表ListNode head4 = new ListNode(10);head4.next = new ListNode(20);System.out.println("原链表4:");printList(head4);ListNode reversed4 = reverseNode.reverseList(head4);System.out.println("反转后:");printList(reversed4);}private static void printList(ListNode head) {if (head == null) {System.out.println("null");return;}ListNode current = head;while (current != null) {System.out.print(current.val);if (current.next != null) {System.out.print(" -> ");}current = current.next;}System.out.println();}
}
http://www.dtcms.com/a/443718.html

相关文章:

  • 怎样在外国网站开发客户昆明网站建设网站建设
  • 请人做网站后台密码公共信息服务平台
  • 网站开发都是用什么做的网站排名推广的优点是什么
  • 软件网站模板个人主页网页设计模板免费
  • godaddy如何创建网站百度搜图片功能
  • 企业做网站天津网站设计与建设实验报告
  • C4D R20新增功能体积对象之雾类型深度解析与应用实践
  • 最长连续序列 Java
  • 做遗嘱的网站有哪些专门找人做软件的网站
  • 电商网站建设系统北京建筑设计公司排行榜
  • 如何制作动漫网站模板下载地址网站怎么做图片动态图片不显示不出来的
  • 网站体验分享cpu占用超出网站空间的分配值
  • 湛江网站建设运营方案极简WordPress个人博客主题
  • 网站开发结论好用的浏览器
  • 可视化网站开发平台如何编写一个网页
  • 电商网站建设网dedecms+wordpress
  • 网站的运营模式爬闪数媒 网站建设
  • 543. 二叉树的直径
  • 服装购物网站排名365建设网站
  • 医院客户做网站找谁程序员外包接单
  • Java中数组的详细讲解,快速理解引用数据类型
  • 长春 网站 设计公司wordpress接收表单
  • 网站首页缩略图 seo齐三seo顾问
  • 网站建设国风网络公司电商分销平台
  • 怎么做网站统计网络营销是不是网络推广
  • 提供手机网站建设企业全球十大跨境电商平台
  • 网站建设设计有限公司企业微信app下载安装官网电脑版
  • 网站行业关键词房屋装修全包清单
  • 福鼎手机网站建设微信公众号的微网站怎么做的
  • 织梦cms怎么打不开网站自己做网站有哪些方法呢