力扣:最大值(Java)

2023-11-08

给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。

注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。

class Solution {
    public String largestNumber(int[] nums) {
        String[] strArr = new String[nums.length];/创建字符数组
        for (int i = 0; i < nums.length; i++) {
            strArr[i] = String.valueOf(nums[i]);//把整数转化为字符串
        }
        Arrays.sort(strArr, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return (o2 + o1).compareTo(o1 + o2);
            }
        });
        StringBuilder sb = new StringBuilder();
        //防止测试用例中出现了[0,0,0]的情况,按道理应该返回"0"
        if (strArr[0].equals("0")) {
            return "0";
        }
        for (String temp : strArr) {
            sb.append(temp);
        }
        return sb.toString();
    }
}

运行结果:

 知识补充:

int compare(T o1, T o2);

    o1  <  o2   ---- 返回负数
    o1  =  o2   ---- 返回 0
    o1  >  o2   ---- 返回正数

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

力扣:最大值(Java) 的相关文章

  • 如何在测试套件中定义 JUnit 方法规则?

    我有一个类 它是 JUnit 测试类的 JUnit 套件 我想定义一个规则on the suite 这是可以做到的 但需要做一些工作 您还需要定义自己的 Suite 运行程序和测试运行程序 然后在测试运行程序中重写 runChild 使用以
  • 任务“:app:dexDebug”执行失败

    我目前正在处理我的项目 我决定将我的 Android Studio 更新到新版本 但在我导入项目后 它显示如下错误 Information Gradle tasks app assembleDebug app preBuild UP TO
  • 如何在 Eclipse 中用阿拉伯语读写

    我在 eclipse 中编写了这段代码来获取一些阿拉伯语单词 然后打印它们 public class getString public static void main String args throws Exception PrintS
  • 将链接对象转换为流或集合

    我想迭代堆栈跟踪 堆栈跟踪由可抛出对象组成 其 getCause 返回下一个可抛出对象 最后一次调用 getCause 返回 null 示例 a gt b gt null 我尝试使用 Stream iterable 这会导致 NullPoi
  • 如何解决 onEditCommit 事件上的类型不匹配错误?

    我在 Fxml 中使用 onEditCommit 事件在用户编辑数据后检索数据 FXML 代码
  • PropertySources 中各种源的优先级

    Spring引入了新的注释 PropertySources对于所有标记为的类 Configuration since 4 0 需要不同的 PropertySource作为论证 PropertySources PropertySource c
  • 所有junit测试后的清理

    在我的项目中 我必须在所有测试之前进行一些存储库设置 这是使用一些棘手的静态规则来完成的 然而 在所有测试之后我不知道如何进行清理 我不想保留一些神奇的静态数字来引用所有测试方法的数量 我应该一直维护它 最受赞赏的方法是添加一些侦听器 该侦
  • cucumber-junit-platform-engine 中的功能文件发现

    In cucumber junit我使用的库 CucumberOptions定义功能文件位置 package com mycompany cucumber import cucumber api CucumberOptions import
  • Install4j:如何在安装结束时执行命令行 java -jar filename.jar

    在 Intall4j 中 在安装结束时 我只想通过执行如下命令行来初始化某些内容 java jar filename jar 我怎样才能归档这个任务install4j Thanks 将 运行可执行文件或批处理文件 操作添加到 安装屏幕 并设
  • 如何在java中使jpeg无损?

    有没有人可以告诉我如何使用编写 jpeg 文件losslessjava中的压缩 我使用下面的代码读取字节来编辑字节 WritableRaster raster image getRaster DataBufferByte buffer Da
  • 如何使用 Mockito 和 Junit 模拟 ZonedDateTime

    我需要模拟一个ZonedDateTime ofInstant 方法 我知道SO中有很多建议 但对于我的具体问题 到目前为止我还没有找到任何简单的解决办法 这是我的代码 public ZonedDateTime myMethodToTest
  • OpenJDK 版本控制

    上下文 我想确保我们系统上安装的 Java 不受 CVE 2022 21449 的影响 java version 给出 openjdk version 11 0 7 2020 04 14 LTS OpenJDK Runtime Enviro
  • 如何为 Jackson 编写一个包罗万象的(反)序列化器

    当您提前知道类型时 编写自定义序列化器非常容易 例如 MyType一个人可以写一个MyTypeSerializer extends StdSerializer
  • 在 Selenium WebDriver 上如何从 Span 标签获取文本

    在 Selenium Webdriver 上 如何从 span 标记检索文本并打印 我需要提取文本UPS Overnight Free HTML代码如下 div id customSelect 3 class select wrapper
  • ExceptionHandler 不适用于 Throwable

    我们的应用程序是基于 Spring MVC 的 REST 应用程序 我正在尝试使用 ExceptionHandler 注释来处理所有错误和异常 I have ExceptionHandler Throwable class public R
  • 如何移动图像(动画)?

    我正在尝试在 x 轴上移动船 还没有键盘 我如何将运动 动画与boat png而不是任何其他图像 public class Mama extends Applet implements Runnable int width height i
  • Path2D 上的鼠标指针检测

    我构建了一个Path2D http docs oracle com javase 7 docs api java awt geom Path2D html表示由直线组成的未闭合形状 我希望能够检测何时单击鼠标并且鼠标指针靠近路径 在几个像素
  • 为什么 BufferedWriter 不写入文件?

    我有这个代码 String strings Hi You He They Tetrabenzene Caaorine Calorine File file new File G words txt FileWriter fWriter Bu
  • Java 推断泛型类型

    我正在寻找类似的推断捕获泛型类型的概念 类似于以下方法片段 但不是捕获泛型类型的类 public
  • java中如何找到class文件的包

    我正在编写一个使用 class 文件的 java 程序 我希望能够读取文件系统上的 class 文件 使用 InputStream 并确定它所在的包 该 class 文件可能不在一个好的包目录结构中 它可能位于某个随机位置 我怎样才能做到这

随机推荐

  • 【强推】10个有趣的Python程序

    1 引言 Python程序有许多模块和第三方包 这非常有助于高效编程 了解这些模块的正确使用方法是很重要的 在本文中 主要介绍一些非常实用的一些Python常见的模块 闲话少说 我们直接开始吧 2 Python伪信息生成器 创建一个程序 生
  • Visual Basic环境:未能加载基类“ShaftAssDesign.XFrmTopClass”。

    文件中的类都不能进行设计 因此未能为该文件显示设计器 设计器检查出文件中有以下类 FrmSetSearch 未能加载基类 ShaftAssDesign XFrmTopClass 请确保已引用该程序集并已生成所有项目 因为vs的版本不同 所以
  • 阿里云OSS+PicGo建立图床踩坑

    在本地写md文档时候插入图片是一件挺麻烦的事情 使用本地图片的话 每次在给别人分享文档或者上传博客的时候就比较难顶了 网上有两种方法可以解决这个问题 一种是使用图片的base64编码 但是图片转换为base64编码之后 编码长度会很大 文档
  • Mac环境下安装Pod

    Mac环境下安装Pod Mac环境下安装Pod 阿里云开发者社区 aliyun com 简介 Mac 环境下安装Pod Pod安装需要ruby ruby需要rvm可以终端中查看rvm 安装没有 如果没有安装则按以下步骤安装 rvm安装 cu
  • implicit declaration of function —— 函数隐式声明 警告

    implicit declaration of function 函数隐式声明 警告 文章目录 错误情况 原因 解决方法 错误情况 在学习 c 语言的过程中 手动使用 clang 进行编译的时候 碰到自定义函数会报出下面的错误 hello
  • 物联网毕业设计 单片机智能温控风扇设计与实现

    文章目录 1 简介 2 绪论 2 1 课题背景 3 系统设计 3 1 系统架构 3 2 硬件部分 3 2 1 DS18B20 简介 3 2 2 LCD1602 液晶屏简介 3 3 软件部分 3 3 1 整体软件流程 3 3 2 初始化 3
  • 数据库Sqlite和mysql

    致谢 https www ssdax com 2188 html https blog csdn net zbw1185 article details 47975965 1概述 数据库可以分为两类 关系型数据库和内存数据库 DB Engi
  • 【算法】McCode度量法

    目录 一 什么是McCode度量法 二 McCabe度量方法计算程序复杂度 三 真题演练 一 什么是McCode度量法 McCabe度量法是由托马斯 麦克凯提出的一种基于程序控制流的复杂性度量方法 McCabe复杂性度量又称环路度量 它认为
  • android实现箭头流程列表_Android弹出选项框及指示箭头动画选择

    Android弹出选项框及指示箭头动画选择 Android原生的Spinner提供了下拉列表选项框 但在一些流行的APP中 原生的Spinner似乎不太受待见 而通常会有下图所示的下拉列表选项框 初始化状态 点击弹出下拉选择选项框 选中后
  • 运维自动抓包脚本tcpdump

    文章目录 运维自动抓包脚本 抓包效果 tcpdump sh 运维自动抓包脚本 基于tcpdump命令写的抓包脚本工具 抓包解释参考 tcpdump抓包解释 抓包效果 root h11 sh scripts tcpdump sh gt gt
  • STM32外设之USART

    第二章 初识USART 目录 第二章 初识USART 前言 一 USART是什么 二 使用步骤 1 功能框图 2 寄存器 3 固件库编程 总结 前言 本章进行初识STM32F103串口 讲解通信方式 主要了解串口相应寄存器 串口的库函数编程
  • Compare Data from the Same Table in two Different Environments

    The Oracle SQL below compares table1 that has 2 key fields and 3 regular fields Note For the SQL below to work your pass
  • 软件测试面试题(带答案)

    1 请自我介绍一下 需简单清楚的表述自已的基本情况 在这过程中要展现出自信 对工作有激情 上进 好学 面试官您好 我叫 今年26岁 来自江西九江 就读专业是电子商务 毕业后就来深圳工作 有三年的软件测试工程师的经验 我性格比较开朗 能和同事
  • IDEA使用两种方式实现第一个Servlet程序

    第一种方式 实现Servlet接口 1 新建一个普通的maven工程 首先新建一个普通的maven工程 记得不要勾选下面的webapp 这是新建好的目录结构 然后右键项目选择 Add Framework support 最后点击web Ap
  • php生成的apk无法安装,xapk怎么安装

    安装xapk的方法 1 将 xapk改为 zip并解压其中的apk文件和android文件夹 然后安装apk并将相关文件复制到手机内存的android的obb中 2 下载Xapk安装器 然后选择需要安装的程序进行安装即可 本文示例操作环境
  • iOS黑暗模式tableViewCell

    背景 iOS 13 之后 App可以支持黑暗模式 如不需要可以直接禁掉 参考iOS系统中的自带软件的黑暗模式的适配 可以看看 设置 页面在黑暗 dark 模式下和正常 light 模式下的显示 以此参考来对我们自己的App进行黑暗模式的适配
  • openswan 移植

    最近一周都在移植openswan 这是个非常想大的ipsec VPN实现工具 编辑CROSSCOMPILE sh 文件 这是openswan自带的专门用于交叉编译的脚本 修改如下 bin sh cross compile example e
  • vue-devtools的安装

    下载 解压过入目录 进入目录后 不要使用 npm install 会出错的 我们就用 yarn 来就可以了 npm install g yarn yarn install yarn run build 等待结束就可以了 进入 package
  • 保持 SSH 连接

    SSH 总是被强行中断 尤其是用 VSCode 代码写的好好的 突然刷新窗口 不仅效率低 更惹人恼火 可以通过配置服务端或客户端的 SSH 来保持 SSH 链接 方法一 配置服务端 可以在服务端配置 让 server 每隔 30 秒向 cl
  • 力扣:最大值(Java)

    给定一组非负整数 nums 重新排列每个数的顺序 每个数不可拆分 使之组成一个最大的整数 注意 输出结果可能非常大 所以你需要返回一个字符串而不是整数 class Solution public String largestNumber i