Java List集合反转元素 您所在的位置:网站首页 java数字颠倒 Java List集合反转元素

Java List集合反转元素

2023-12-28 18:14| 来源: 网络整理| 查看: 265

 想要将ArrayList集合的元素 1 2 3 反转成 3 2 1。使用 Collections.reverse(list) 。包在import java.util.Collections  如:

List list = new ArrayList(); Collections.reverse(list);

 示例1:将集合1 2 3 反转为 3 2 1

import java.util.ArrayList; import java.util.Collections; import java.util.List; public class ListReverseTest { public static void main(String[] args){ List list = new ArrayList(); list.add(1); list.add(2); list .add(3); Collections.reverse(list); System.out.println(list); // [3, 2, 1] } }

在这里插入图片描述  练习: 45. 之字形打印二叉树

题目:从上到下按层打印二叉树,同一层的结点按从左到右的顺序打印,每一层打印到一行。

数据范围 树中节点的数量 [0,1000]。

样例 输入如下图所示二叉树[8, 12, 2, null, null, 6, null, 4, null, null, null] 8 / \ 12 2 / 6 / 4

输出:[[8], [12, 2], [6], [4]]

 代码: bfs读取元素,每隔一层反转元素就OK了。

/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public List printFromTopToBottom(TreeNode root) { List list = new ArrayList(); if( root == null ) return list; LinkedList q = new LinkedList(); q.add(root); q.add(null); List temp = new ArrayList(); int i = 1 ; while( !q.isEmpty() ){ TreeNode t = q.poll(); if(t == null){ if( i == 0){ Collections.reverse(temp); } list.add( temp ); temp = new ArrayList(); if( q.isEmpty() ) break; q.add(null); i = (i == 1)? 0 : 1; continue; } temp.add(t.val); if( t.left != null ) q.add(t.left); if( t.right != null ) q.add(t.right); } return list; } }


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有