以整数元素构成的list中的数字组成最小整数
问题
把一个int型数组中的数字拼成一个串,这个串代表的数字最小。
思路说明
不同角度,对原题理解有所不同。我依照以下的理解方式求解。
对这个问题的理解:
有一个元素是int类型的list;
将上述list中的每一个元素的数字分别取出来。然后将这些数字的顺序进行从新排列,并将当中的最小整数输入。就是题目中要求的最小数字。
假设依照上述理解,在解题中,最应当小心的是数字假设非常大,比方list中的某个int元素是:222222222222227777777777776666666666699999999999888888888...非常大的整数。就不得不转化为字符串操作了。
所以,在本问题中。基本思路是:
- 将list中的int元素转换为str;
- 将全部数字(str类型)装入到一个list2
- 对list2进行排序
- 将list2中的数字(str类型)组装成一个数值(str类型)
解决(Python)
#! /user/bin/env python
#coding:utf-8
def joint_int(lst):
str_list = [str(i) for i in lst]
str_lonely = [str_list[i][j] for i in range(len(str_list)) for j in range(len(str_list[i]))]
sorted_str = sorted(str_lonely)
return "".join(sorted_str)
print joint_int([1230975,4087644567856])
很多其它以python求解的问题请訪问:https://github.com/qiwsir/algorithm
qiwsir#gmail.com
以整数元素构成的list中的数字组成最小整数的更多相关文章
- 数据结构作业——N个数中未出现的最小整数(想法题)
Description 给出一串数字,这串数字由 n 个数 ai 组成,找出未出现在这串数字中的最小正整数 Input 输入第一行为一个正整数 n (1 <= n <= 1000) 第二行 ...
- 2、python中的数字
第二篇开始谈谈python中的数据. 一.前言 python中的数字包含了整数.浮点数.复数三种.在python的早期版本,或许可以看到正数被分为长整数与短整数,后来被取消了,因此这里不作讨论.通常我 ...
- 计算1到N中包含数字1的个数
转自:http://pandonix.iteye.com/blog/204840 Mark N为正整数,计算从1到N的所有整数中包含数字1的个数.比如,N=10,从1,2...10,包含有2个数字1. ...
- 一个N*M的矩阵,找出这个矩阵中所有元素的和不小于K的面积最小的子矩阵
题目描述: 一个N*M的矩阵,找出这个矩阵中所有元素的和不小于K的面积最小的子矩阵(矩阵中元素个数为矩阵面积) 输入: 每个案例第一行三个正整数N,M<=100,表示矩阵大小,和一个整数K 接下 ...
- java集合 collection-list-ArrayList 将自定义对象作为元素存到ArrayList集合中,并去除重复元素。
import java.util.*; /* 将自定义对象作为元素存到ArrayList集合中,并去除重复元素. 比如:存人对象.同姓名同年龄,视为同一个人.为重复元素. 思路: 1,对人描述,将数据 ...
- python中如何不区分大小写的判断一个元素是否在一个列表中
python中判断某一个元素是否在一个列表中,可以使用关键字in 和 not in. 示例如下: 如果需要输出相应的信息,可以搭配使用if语句,这里不赘述. --------------------- ...
- js判断一个元素是否在数组中
js判断一个元素是否在数组中 var arr = ['a','s','d','f']; console.info(isInArray(arr,'a'));//循环的方式 function isInAr ...
- 【JS】【6】判断一个元素是否在数组中
摘要: 有三种方式: 1,jquery的inArray方法 2,数组的indexOf方法 3,普通的for循环方法 正文: 1,jquery的inArray方法 /** * @param {Objec ...
- js中如何以最简单的方式将数组元素添加到对象中
//如题,通常做法就是循环数组,最后在添加length属性,如: var obj = {}; var pushArr = [11,22,33,44,55,66]; for(var i=0;i<p ...
随机推荐
- Odata简介和Demo
转:http://www.cnblogs.com/shanyou/archive/2013/06/11/3131583.html 在SOA的世界中,最重要的一个概念就是契约(contract).在云计 ...
- C# 条码生成类
using System.Collections; using System.Text.RegularExpressions; namespace DotNet.Utilities { public ...
- mongdb启动报错
2018-08-19T12:25:31.707+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1 ...
- TCP/IP Socket发送接收图片demo
一个实例通过client端和server端通讯 客户端通过TCP/IP传输资源文件,比如图片,文字,音频,视频等..... 服务端接受到文件存入本地磁盘,返回接受到:“收到来自于"+s.ge ...
- Java8实战Lambda和Stram API学习
public class Trader{ private String name; private String city; public Trader(String n, St ...
- Java 双亲委派模型
1. Java 类加载器的分类 2. 双亲委派模型 Parents Delegration Model
- 用CSS3 & jQuery创建apple TV海报视差效果
用CSS和jQuery来实现它,尽量看起来和原效果一样. 最终效果图 本教程里,我将使用CSS,HTML和jQuery来创建一个近似Apple TV视差效果,如果你正在阅读,我假设你对上述三种技术都有 ...
- JavaScript - 收藏集 - 掘金
Angular 中的响应式编程 -- 浅淡 Rx 的流式思维 - 掘金第一节:初识Angular-CLI第二节:登录组件的构建第三节:建立一个待办事项应用第四节:进化!模块化你的应用第五节:多用户版本 ...
- [iOS] UIFont 设置字体
label.font = [UIFont fontWithName:@"Arial-BoldItalicMT" size:24]; 字体名如下: Font Family: Amer ...
- 理解ASP.NET 5运行时命令:DNVM, DNX, 和DNU
ASP.NET 5 引入了一个新型的运行时,让我们可以现场交付模式组合式构建应用程序,而不依赖于宿主机上的.NET框架.这种新模式为我们提供了命令行工具(DNVM.DNX.DNU)用于管理我们的.ne ...