全排列,超时,知道超时,只是想验证一下。

class Solution {
public:
string largestNumber(vector<int>& nums) {
sort(nums.begin(),nums.end());
string res="";
res=f(nums);
while(next_permutation(nums.begin(),nums.end())){
if(res<f(nums))
res=f(nums);
}
return res;
}
string f(vector<int>& coll){
string res;
for(int i=0;i<coll.size();++i){
ostringstream sss;
sss<<coll[i];
res+=sss.str();
}
return res;
}
};

  en ,这个也不对

class Solution {
public:
string largestNumber(vector<int>& nums) {
vector<string> coll;
for(int i=0;i<nums.size();++i){
ostringstream sss;
sss<<nums[i];
coll.push_back(sss.str());
}
sort(coll.begin(),coll.end());
string res="";
for(int i=coll.size()-1;i>=0;--i)
res+=coll[i];
return res;
} };

  事实证明,过了点不吃饭真的很危险,又低血糖了。

class Solution {
public:
string largestNumber(vector<int>& nums) {
vector<string> coll;
for(int i=0;i<nums.size();++i){
ostringstream sss;
sss<<nums[i];
coll.push_back(sss.str());
}
string res="";
auto ite=coll.begin();
sort(ite,ite+coll.size(),c);
for(int i=coll.size()-1;i>=0;--i)
res+=coll[i];
if(res[0] == '0')
return "0";
return res;
}
static bool c(const string a,const string b)
{
string ab=a+b;
string ba=b+a;
return ab<ba;
}
};

  更精简的

class Solution { public: string largestNumber(vector<int>& nums) { sort(nums.begin(), nums.end(), [](const int& lhs, const int & rhs){return to_string(lhs) + to_string(rhs) > to_string(rhs) + to_string(lhs);}); if (nums[0] == 0) return "0"; return accumulate(nums.begin(), nums.end(), string(""), [](const string& a, int b){ return a + to_string(b);}); } };

LeetCode() Largest Number的更多相关文章

  1. [LeetCode] Largest Number 最大组合数

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

  2. Leetcode Largest Number c++ solution

    Total Accepted: 16020 Total Submissions: 103330     Given a list of non negative integers, arrange t ...

  3. LeetCode: Largest Number 解题报告 以及Comparator, CompareTo 应用

    Largest Number Given a list of non negative integers, arrange them such that they form the largest n ...

  4. LeetCode——Largest Number

    Description: Given a list of non negative integers, arrange them such that they form the largest num ...

  5. [LeetCode] Largest Number 排序

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

  6. [LeetCode] Largest Number At Least Twice of Others 至少是其他数字两倍的最大数

    In a given integer array nums, there is always exactly one largest element. Find whether the largest ...

  7. JavaScript中sort方法的一个坑(leetcode 179. Largest Number)

    在做 Largest Number 这道题之前,我对 sort 方法的用法是非常自信的.我很清楚不传比较因子的排序会根据元素字典序(字符串的UNICODE码位点)来排,如果要根据大小排序,需要传入一个 ...

  8. Leetcode:Largest Number详细题解

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

  9. [LeetCode][Python]Largest Number

    # -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com'https://oj.leetcode.com/problems/largest ...

随机推荐

  1. IE6兼容问题并解决总结

    1.使用声明你必须经常在html网页头部放置一个声明,推荐使用严格的标准.例如<!DOCTYPEHTMLPUBLIC“-//W3C//DTDHTML4.01//EN”   "http: ...

  2. Java集合运用技巧

    需要唯一吗? 需要:Set 需要制定顺序吗? 需要:TreeSet 不需要:HashSet 但是想要一个和存储一致的顺序(有序):LinkedHashSet 不需要:List 需要频繁增删吗? 需要: ...

  3. IOC和Aop使用的扩展

    下面还有静态代理和动态代理 1.构造注入 lib包: 在entity包下新建一个实体类User 代码: package cn.happy.entity; public class User { pri ...

  4. mvc 导入,导出excel

    最近主要做导入excel 在网上查询了代码 public FileResult DownLoadExcelJiZuChaXunGenRenXiaoFeiJiLu() { DataTable dt = ...

  5. Spring中Bean的生命周期方法

    Bean的生命周期方法 src\dayday\Car.java package dayday;import com.sun.org.apache.xpath.internal.SourceTree;i ...

  6. jpa 表字段转bean对象

    select 'private ' || decode(v_type, 'int', 'Integer', 'float', 'Double', 'date', 'Date', 'String') | ...

  7. iOS学习之MVC,MVVM,MVP模式优缺点

    为什么要关注架构设计? 因为假如你不关心架构,那么总有一天,需要在同一个庞大的类中调试若干复杂的事情,你会发现在这样的条件下,根本不可能在这个类中快速的找到以及有效的修改任何bug.当然,把这样的一个 ...

  8. final修饰的变量是引用不能改变,还是引用的对象不能改变???

    对于这个问题,我们不能只记结论,要拿实例说话,参看以下代码: public class Demo { public static void main(String[] args) { final St ...

  9. 第一章:Android系统移植与驱动开发概述

    Android是基于Linux内核的,与Linux内核没有太大的区别,只是增加了一些自己独有的驱动,随着Android发布版本的不断升级,他所使用的Linux内核也在不断升级,以适应新的安卓版本,为他 ...

  10. fork函数创建新进程过程分析

    gdb调试执行流程,首先设置断点b sys_clone,当在shell下输入fork命令后,系统执行至断点,接下来按步执行: 判断是否被跟踪 判断是否被创建为轻量级进程(vfork) 判断父进程是否被 ...