算法:把數組排成最小的數

* @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.pswp.cn/news/277460.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277460.shtml
英文地址,請注明出處:http://en.pswp.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就可以直接互相訪問…