[LeetCode]179. Largest Number

题目描述

解题思路

求最大的数,在数组中对于每一位数字数值越大应当越靠前,如:9 > 5,所以9应该在5之前
需要考虑的是对于不同位数的数之间的比较 9 < 35 ,但是9应该在35之前

解决方法:比较两个数的顺序,将两个数当做字符串,拼接后进行字符串比较即可

代码

#define MAX 15bool cmp(const string& s1, const string& s2) {return (s1 + s2) > (s2 + s1);
}class Solution {
public:string largestNumber(vector<int>& nums) {vector<string> numbers;vector<int>::iterator it;for (it = nums.begin(); it != nums.end(); ++it) {string numStr = numberToStr(*it);numbers.push_back(numStr);}sort(numbers.begin(), numbers.end(), cmp);string res = "";vector<string>::iterator it2;bool firstZero = (*numbers.begin() == "0");for (it2 = numbers.begin(); it2 != numbers.end(); ++it2) {if (firstZero && (*it2 == "0") && it2 + 1 != numbers.end())continue;firstZero = false;res += *it2;}return res;}string numberToStr(int num) {char bits[MAX];int n = 0;if (num == 0) {n = 1;bits[0] = '0';bits[1] = '\0';} else {while (num != 0) {bits[n++] = (num % 10) + '0';num /= 10;}bits[n] = '\0';}for (int i = 0, j = n - 1; i < j; ++i, --j) {char temp = bits[i];bits[i] = bits[j];bits[j] = temp;}return string(bits);}
};

[LeetCode]179. Largest Number相关推荐

  1. Leetcode 179 Largest Number

    Leetcode 179 Largest Number 题目 思路 代码 优化 题目 Given a list of non negative integers, arrange them such ...

  2. [LeetCode]179.Largest Number

    [题目] Given a list of non negative integers, arrange them such that they form the largest number. For ...

  3. LeetCode(179) Largest Number

    题目如下: Given a list of non negative integers, arrange them such that they form the largest number. Fo ...

  4. [leetcode]179 Largest Number

    问题描述: Given a list of non negative integers, arrange them such that they form the largest number. Fo ...

  5. [leetcode] 179 Largest Number

    拿到这个题的第一个想法是 将int转换成string,然后按照string的比较规则,但是发现  13<3<34这种不好处理. 那么何不我们直接比较下两者的组合,取其较大的呢,由此自定义优 ...

  6. LeetCode:Largest Number - 求整型数组中各元素可拼合成的最大数字

    2019独角兽企业重金招聘Python工程师标准>>> 1.题目名称 Largest Number(求整型数组中各元素可拼合成的最大数字) 2.题目地址 https://leetco ...

  7. 179 Largest Number

    题目链接:https://leetcode.com/problems/largest-number/ 题目: Given a list of non negative integers, arrang ...

  8. largest number java_将给定的数组组成最大的数 Largest Number

    问题: Given a list of non negative integers, arrange them such that they form the largest number. For ...

  9. LeetCode——Kth Largest Element in an Array

    LeetCode--Kth Largest Element in an Array Question Find the kth largest element in an unsorted array ...

最新文章

  1. 某内存池中的指针用法
  2. python的异常处理
  3. 用python画个三维地球_如何用Python制作三维散点图?
  4. 黄聪:Destoon中循环嵌套Loop和php代码结合调用自增长数字
  5. 通过Ajax异步请求数据
  6. 一个小小Css3动画的案例
  7. java restful开发规范_restful api 开发规范
  8. android 5.1禁止休眠
  9. Kubernetes 小白学习笔记(32)--kubernetes云原生应用开发-sidecar注入和istio服务治理演示
  10. WEB三大攻击之—SQL注入攻击与防护
  11. 《Java EE互联网轻量级框架整合开发》在京东预售,发个目录
  12. Excel函数公式大全—IF家族函数
  13. 进阶 | 手把手教你模拟键盘和鼠标操作-ActionChains
  14. 计算机课ppt插入图片,ppt2010官方基础教程:插入照片-powerpoint技巧-电脑技巧收藏家...
  15. c语言if的作用,c语言if语句的用法
  16. Redis缓存读写策略
  17. 十七年未盈利,硅谷最神秘独角兽Palantir的盈利魔咒何时破?
  18. matlab拷贝不进u盘,Mac无法拷贝文件到U盘怎么办
  19. 使用Origin根据数据画二维图(单x,双y)
  20. VBA之正则表达式(1)-- 基础篇

热门文章

  1. 【区块链 | AAVE】一文讲清-DeFI王者AAVE最新的稳定币GHO提案
  2. L48.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- last、lastb和lastlog
  3. 为什么计算机起始时间、为什么Java时间戳、是1970年1月1日?
  4. scrapy 抓取拉钩 ajax
  5. matlab 实验七,matlab 实验七 数字填图问题
  6. OpenModelica仿真RLC电路
  7. 绵阳现在买房怕房价跌,不买又怕房价涨!到底是跌是涨?
  8. Canvas 从 0 到 1 -- 开发 2D 游戏《保卫家园》-- 【上篇】
  9. 程序员必备的软技能-金字塔原理拆解(下)
  10. MySQL索引详解之索引的数据结构