设为首页 加入收藏

TOP

以整数元素构成的list中的数字组成最小整数
2015-07-24 06:29:06 来源: 作者: 【 】 浏览:28
Tags:整数元素 构成 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

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇编程算法 - 计算一个数的所有组合.. 下一篇C++其他几个常见操作程序

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: