【剑指offer】面试题45:把数组排成最小的数

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。

 

示例 1:

输入: [10,2]
输出: "102"
示例 2:

输入: [3,30,34,5,9]
输出: "3033459"
 

提示:

0 < nums.length <= 100
说明:

输出结果可能非常大,所以你需要返回一个字符串而不是整数
拼接起来的数字可能会有前导 0,最后结果不需要去掉前导 0

代码:

class Solution {

    public String minNumber(int[] nums) {

        if(nums==null||nums.length==0)

        {

            return " ";

        }

        List<Integer> list = new LinkedList<>();

        for(int i=0;i<nums.length;i++)

        {

            list.add(nums[i]);

        }

        Collections.sort(list,new Comparator<Integer>(){

            @Override

            public int compare(Integer o1,Integer o2)

            {

                String s1 = o1+"" +o2;

                String s2 = o2+""+o2;

                return s1.compareTo(s2);

            }

        });

        StringBuilder result = new StringBuilder();

        for(int i:list)

        {

            result.append(i);

        }

        return result.toString();

    }

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485289.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ASP.NET MVC 扩展HtmlHelper类为 js ,css 资源文件添加版本号

写在前面 在项目部署当中会需要更新 css 文件或 js 等资源文件&#xff0c;为了避免由于浏览器缓存的原因无法加载新的 css 或 js &#xff0c;一般的做法是在资源文件的后面加上一个版本号来解决&#xff0c;这样浏览器就会去服务器下载新的资源文件。 如果某个 css 文件被多个…

生物学哲学:科学哲学的新视野

来源&#xff1a;自然辩证法研究 2003年第4期作者&#xff1a;周建漳在未经言明的情况下&#xff0c;“科学”一词通常总是指向“自然科学”&#xff0c;而在传统“科学哲学”的视野中&#xff0c;“科学”则又似乎“不言自明”地指向“数理科学”&#xff08;注&#xff1a;所…

计算机组成原理——指令与数据的寻址方式

计算机组成原理——指令与数据的寻址方式 前言&#xff1a; 指令的定义&#xff1a;计算机执行某种操作的命令。从计算机组成的层次结构来看&#xff0c;计算机的指令有微指令&#xff0c;机器指令&#xff0c;宏指令之分。 微指令&#xff1a;微程序级的命令&#xff0c;它属…

【剑指offer】面试题46. 把数字翻译成字符串(java)

给定一个数字&#xff0c;我们按照如下规则把它翻译为字符串&#xff1a;0 翻译成 “a” &#xff0c;1 翻译成 “b”&#xff0c;……&#xff0c;11 翻译成 “l”&#xff0c;……&#xff0c;25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数&#xff0c;用来计…

IBM被曝拟出售昔日明星业务Watson Health,10年医疗梦就此破碎?

来源&#xff1a;AI前线 整理&#xff1a;刘燕传 IBM 拟出售 Watson Health 业务据《华尔街日报》报道&#xff0c;IBM 或将出售 IBM Watson Health 业务。华尔街日报援引知情人士称&#xff0c;随着公司新任 CEO 开始精简公司规模&#xff0c;并在混合云计算领域发力&#xf…

C# WebBrowser 设置独立的代理

近期需要对webbrower设置代理&#xff0c;找到了如下方案&#xff1a; 1. 对修改注册表&#xff0c;设置全局代理 这种方法限制在一个进程内只能设置或取消代理&#xff0c;而且是全局代理&#xff0c;对于部分不需要代理对功能会产生影响 2. 通过函数InternetSetOption实现修改…

全球光刻机龙头是怎样炼成的

来源&#xff1a;公众号「驭势资本」半导体芯片制作分为IC设计、IC制造、IC封测三大环节&#xff0c;光刻作为IC制造的核心环节&#xff0c;其主要作用是将掩模版上的芯片电路图转移到硅片上。由于光刻的工艺水平直接决定芯片的制程水平和性能水平&#xff0c;光刻成为IC制造中…

页面置换算法——最佳置换算法、最近最少使用算法、先进先出算法、时钟置换算法

计算机操作系统——页面置换算法 根据中国大学MOOC计算机操作系统(电子科技大学)而写. 如果自己要设计页面置换&#xff0c;要根据什么原则来设计&#xff1f;我们首先想到的是存储器的局部性原理&#xff08;时间局部性、空间局部性&#xff09; Page removed should be the …

【剑指offer】面试题47:礼物的最大价值(Java)

在一个 m*n 的棋盘的每一格都放有一个礼物&#xff0c;每个礼物都有一定的价值&#xff08;价值大于 0&#xff09;。你可以从棋盘的左上角开始拿格子里的礼物&#xff0c;并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值&#xff0c;请计…

vue中如何创建组件?

全局注册 Vue.component(my-component-name, {// ... 选项 ... }) 这些组件是全局注册的&#xff0c;也就是说它们在注册之后可以用在任何新创建的Vue根实例&#xff08;new Vue&#xff09;的模板中。比如&#xff1a; js中&#xff1a; Vue.component(component-a, { /* ... …

MIT提出Liquid机器学习系统,可像液体一样适应动态变化

作者&#xff1a;Daniel Ackerman机器之心编译编辑&#xff1a;Panda麻省理工学院&#xff08;MIT&#xff09;的研究者开发出了一种新型的神经网络&#xff0c;其不仅能在训练阶段学习&#xff0c;而且还能持续不断地适应。他们将这种灵活的算法命名为「Liquid」网络&#xff…

【剑指offer】面试题48. 最长不含重复字符的子字符串(java)

请从字符串中找出一个最长的不包含重复字符的子字符串&#xff0c;计算该最长子字符串的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc"&#xff0c;所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释…

IPMITool driver

IPMITool driver 官网链接&#xff1a; https://docs.openstack.org/ironic/latest/admin/drivers/ipmitool.html IPMITool driver 概述IPMI(Intelligent Platform Management Interface) drivers通过IPMI协议2.0或1.5来管理节点。使用IPMITool工具来控制使能的IPMI设备&#x…

如何理解在数据类型中元素不能修改?

如何理解在数据类型中元素不能修改&#xff1f; 我所理解的元素修改是&#xff1a; 不能对已经赋值或者初始化的数据类型进行元素的修改&#xff0c;这里的修改不是指片面意思上的输错了数值&#xff0c;将光标移到对应位置&#xff0c;按下删除键&#xff0c;再进行数据的修改…

打破 Google 破坏性的搜索垄断

作者&#xff1a;Ryan Cooper译者&#xff1a;Sambodhi策划&#xff1a;刘燕近来&#xff0c;Google 在搜索算法方面的垄断地位&#xff0c;频繁引起美国和欧洲的反垄断关注。Google 在网络搜索方面有绝对的优势。近来&#xff0c;Google 在搜索算法方面的垄断地位&#xff0c;…

【剑指offer】面试题49:丑数

我们把只包含因子 2、3 和 5 的数称作丑数&#xff08;Ugly Number&#xff09;。求按从小到大的顺序的第 n 个丑数。 示例: 输入: n 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 说明: 1 是丑数。 n 不超过1690。 代码&#xff1a; class Solu…

修改maven打包名字

仅需在pom.xml添加下列配置 build><finalName>userapi</finalName></build>转载于:https://www.cnblogs.com/zhao-shan/p/9520010.html

计算机网络——时延、时延带宽积、往返时间、利用率

计算机网络——时延、时延带宽积、往返时间、利用率 推荐课程&#xff1a;https://www.bilibili.com/video/BV19E411D78Q/?p4 1.时延 时延&#xff08;delay或latency&#xff09;是指数据&#xff08;报文、分组、比特&#xff09;从网络&#xff08;或链路&#xff09;的…

一文读懂虚拟现实产业最新发展趋势

来源&#xff1a; 中国电子报作者&#xff1a;赛迪智库虚拟现实产业形势分析课题组2020年以来&#xff0c;5G商用化进程的加速和新冠肺炎疫情背景下“非接触式”经济的新需求为虚拟现实产业发展带来了新的机遇。虚拟现实、增强现实技术在支撑服务疫情防控、加快企业复工复产、强…

【剑指offer】面试题50:第一个只出现一次的字符(java)

在字符串 s 中找出第一个只出现一次的字符。如果没有&#xff0c;返回一个单空格。 示例: s "abaccdeff" 返回 "b" s "" 返回 " " 限制&#xff1a; 0 < s 的长度 < 50000 代码&#xff1a; class Solution { publi…