温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python怎么实现把数组排成最小的数

发布时间:2021-09-04 09:20:09 来源:亿速云 阅读:115 作者:chen 栏目:大数据

本篇内容主要讲解“python怎么实现把数组排成最小的数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么实现把数组排成最小的数”吧!

题目描述

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组 {3,32,321},则打印出这三个数字能排成的最小数字为321323。

思路

可以看成是一个排序问题,先将整型数组转换成String数组,在比较两个字符串 o1 和 o2 的大小时,应该比较的是 o1+o2 和 o2+o1 的大小,如果 o1+o2 < o2+o1,那么应该把 o1 排在前面,否则应该把 o2 排在前面。

代码实现

package Tree;
import java.util.ArrayList;
/** * 二叉树中和为某一值的路径 * 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。 * 路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。 */public class Solution45 {    private ArrayList<ArrayList<Integer>> result = new ArrayList<>();    private ArrayList<Integer> list = new ArrayList<>();
   public ArrayList<ArrayList<Integer>> FindPath(TreeNode root, int target) {        if (root == null) {            return result;        }        list.add(root.val);        target -= root.val;        if (target == 0 && root.left == null && root.right == null) {            result.add(new ArrayList<Integer>(list));        }        FindPath(root.left, target);        FindPath(root.right, target);        list.remove(list.size() - 1);        return result;    }
   public class TreeNode {        int val = 0;        TreeNode left = null;        TreeNode right = null;
       public TreeNode(int val) {            this.val = val;
       }
   }}

到此,相信大家对“python怎么实现把数组排成最小的数”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI