算法:把数组排成最小的数

* @Description 把数组排成最小的数
* @问题:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。
* 例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
* @思路:
* 1:将数组转化为list;
* 2:对list进行排序,重写compara构造方法,最小排序;
* 3:对排序后的list进行累加;
jdk中关于重写compare方法:

 

compareTo方法::

 

 

 

 

package LG.nowcoder;import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;/*** @Author liguo* @Description 把数组排成最小的数* @问题:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。* 例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。* @思路:* @Data 2018-08-17 8:57*/
public class Solution13 {public String PrintMinNumber(int [] numbers) {int n;String s="";ArrayList<Integer> list=new ArrayList<Integer>();n=numbers.length;for(int i=0;i<n;i++){list.add(numbers[i]);//将数组放入arrayList中
        }//实现了Comparator接口的compare方法,原来的compare方法是从小到大排序,所以需要重写;//将集合元素按照compare方法的规则进行排序Collections.sort(list,new Comparator<Integer>(){@Overridepublic int compare(Integer int1, Integer int2) {String s1=int1+""+int2;String s2=int2+""+int1;return s1.compareTo(s2) ;           //对于string进行从小到大的排序;
            }});for(int j:list){s+=j;}return s;}
}

 

 

转载于:https://www.cnblogs.com/liguo-wang/p/9491557.html

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

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

相关文章

牛客网在线编程java_NowCoder

com.adamjwh.pratice.offer.FindInArrays二维数组中的查找com.adamjwh.pratice.offer.ReplaceSpace替换空格com.adamjwh.pratice.offer.PrintList从头到尾打印链表com.adamjwh.pratice.offer.ReConstructTree重建二叉树com.adamjwh.pratice.offer.MakeQueueWithStack用两个栈实…

质量大国-学习概要

问题场景&#xff1a;英国 不断重新定义度量一码历史故事&#xff1a;冷兵器 206年 长平之战 度量衡商鞅统一度量衡 秦国 质量 0.83毫米的箭头 秦国的统一度量衡带来的巨大收益。 1&#xff0c;1791 巴黎 法国科学院 科学革命要为完美的社会提供基点 创建计量体系 孔多塞 重新定…

join的简单总结

BAT面试题&#xff1a;现在有T1、T2、T3三个线程&#xff0c;你怎样保证T2在T1执行完后执行&#xff0c;T3在T2执行完后执行&#xff1f; 这个线程问题通常会在第一轮或电话面试阶段被问到&#xff0c;目的是检测你对”join”方法是否熟悉。这个多线程问题比较简单&#xff0c;…

python numpy矩阵索引_python – Numpy中的矩阵索引

索引后查看形状&#xff1a;In [295]: Anp.matrix([1,2,3])In [296]: A.shapeOut[296]: (1, 3)In [297]: A[0]Out[297]: matrix([[1, 2, 3]])In [298]: A[0].shapeOut[298]: (1, 3)这种行为的关键是np.matrix总是2d.所以即使你选择一行(A [0,&#xff1a;]),结果仍然是2d,形状(…

Activity的呼叫转移*(3个Activity之间的跳转)

Redirection的意思就是“呼叫转移&#xff0c;重寄”的意思 我们也许会再程序开发中遇到这种情况&#xff0c;需要从一个Activity&#xff08;A&#xff09;跳转到另一个Activity&#xff08;B&#xff09;&#xff0c;当在这个Activity&#xff08;B&#xff09;中处理完一些操…

深度解析数据分析、大数据工程师和数据科学家的区别

数据越来越多的影响并塑造着那些我们每天都要交互的系统。不管是你使用Siri&#xff0c;google搜索&#xff0c;还是浏览facebook的好友动态&#xff0c;你都在消费者数据分析的结果。我们赋予了数据如此大的转变的能力&#xff0c;也难怪近几年越来越多的数据相关的角色被创造…

python webservice接口测试传参数_Python3 webservice接口测试方法是什么

Python3 webservice接口测试方法是什么发布时间&#xff1a;2020-06-23 14:07:46来源&#xff1a;亿速云阅读&#xff1a;92作者&#xff1a;清晨不懂Python3 webservice接口测试方法是什么&#xff1f;其实想解决这个问题也不难&#xff0c;下面让小编带着大家一起学习怎么去解…

zabbix4.2 系列(二):agent配置

zabbix-agent&#xff1a; 分为主动模式和被动模式&#xff0c;均在配置文件实现&#xff08;主动模式和被动模式可同时设置&#xff09;&#xff1a; vim /etc/zabbix/zabbix_agentd.conf Server192.168.18.154 &#xff08;用于被动模式&#xff0c;允许哪台服务器可以…

java form 对象 一对一_java-双向一对一地“对象引用了一个未保存...

我有一个简单的一对一关系&#xff1a;>为每个实体单独的DAO.>事务由Spring管理.PersonDao personDao ctx.getBean(PersonDao.class, "personDaoImpl");VehicleDao vehicleDao ctx.getBean(VehicleDao.class, "vehicleDaoImpl");Vehicle vehicle …

RabbitMQ 入门教程(PHP版) 第三部分:发布/订阅(Publish/Subscribe)

发布&#xff0f;订阅 在上篇第二部分教程中&#xff0c;我们搭建了一个工作队列。每个任务之分发给一个工作者&#xff08;worker&#xff09;。在本篇教程中&#xff0c;我们要做的之前完全不一样——分发一个消息给多个消费者&#xff08;consumers&#xff09;。这种模式被…

Proxmox VE 安装、配置、使用之第二章 Proxmox VE 的安全性

第一章 Proxmox VE 的安全性一、 角色及权限图2-1-1二、 Root 的密码安全性把 Root 的实际密码给出去, 在任何系统都是不符合安全规范的!所以在 Linux 里面, 最好把有需要 root 权限的使用者 放到 sudoers 的群组.# sudo usermod -a -G sudo testuserPVE 的权限设定方式 是由 u…

java allocate_Java中volatile关键字的最全总结

一、简介volatile是Java提供的一种轻量级的同步机制。Java 语言包含两种内在的同步机制&#xff1a;同步块(或方法)和 volatile 变量&#xff0c;相比于synchronized(synchronized通常称为重量级锁)&#xff0c;volatile更轻量级&#xff0c;因为它不会引起线程上下文的切换和调…

缩放手势 ScaleGestureDetector 源码解析,这一篇就够了

其实在我们日常的编程中&#xff0c;对于缩放手势的使用并不是很经常&#xff0c;这一手势主要是用在图片浏览方面&#xff0c;比如下方例子。但是&#xff08;敲重点&#xff09;&#xff0c;作为 Android 入门的基础来说&#xff0c;学习 ScaleGestureDetector 的使用&#x…

postgres的数据库备份和恢复

备份和恢复 一条命令就可以解决很简单: 这是备份的命令&#xff1a; pg_dump -h 127/0.0.1 -U postgres databasename > databasename.bak 指令解释&#xff1a; pg_dump 是备份数据库指令&#xff0c;164.82.233.54是数据库的ip地址&#xff08;必须保证数据库允许外部访…

java 类的执行顺序_Java中类的执行顺序

讲解在代码中&#xff1a;package 类执行顺序;/*** java类执行顺序** 1、如果父类有静态成员赋值或者静态初始化块&#xff0c;执行静态成员赋值和静态初始化块* 2、如果类有静态成员赋值或者静态初始化块&#xff0c;执行静态成员赋值和静态初始化块* 3、将类的成员赋予初值(原…

ZooKeeper相关资料集锦

1、ZooKeeper相关概念总结 https://github.com/Snailclimb/JavaGuide/blob/master/docs/system-design/framework/ZooKeeper.md 2、ZooKeeper在Windows下的安装和配置 https://blog.csdn.net/morning99/article/details/40426133 3、Curator框架应用 http://ifeve.com/zookeepe…

JQuery.Ajax()的data参数传递方式

最近&#xff0c;新学c# mvc&#xff0c;通过ajax post方式传递数据到controller。刚开始传递参数&#xff0c;controller中总是为null。现记录一下&#xff0c;可能不全&#xff0c;纯粹记个学习日记。 重点在于参数的方式&#xff0c;代码为例子 1、这里 dataType: "js…

java如何实现封装_java如何实现封装

Java中类的封装是如何实现的封装是将对象的信息隐藏在对象内部&#xff0c;禁止外部程序直接访问对象内部的属性和方法。 java封装类通过三个步骤实现&#xff1a; (1)修改属性的可见性&#xff0c;限制访问。 (2)设置属性的读取方法。 (3)在读取属性的方法中&#xff0c;添加对…

用了30天整理的一些GO语言学习资料,2019请你加油

因为极其优秀的并发性能&#xff0c;Google的亲儿子Go语言站上了风潮之巅。出现在21世纪的GO语言&#xff0c;虽然不能如愿对C取而代之&#xff0c;但是其近C的执行性能和近解析型语言的开发效率以及近乎于完美的编译速度&#xff0c;已经风靡全球。特别是在云项目中&#xff0…

Kubernetes网络设计原则

在配置集群网络插件或者实践K8S 应用/服务部署请时刻想到这些原则&#xff1a; 1.每个Pod都拥有一个独立IP地址&#xff0c;Pod内所有容器共享一个网络命名空间2.集群内所有Pod都在一个直接连通的扁平网络中&#xff0c;可通过IP直接访问 所有容器之间无需NAT就可以直接互相访问…