当前位置: 首页 > article >正文

Leet code 179 最大数

解题思路 贪心算法

贪心算法就是走一步看一步 每一步都取当前位置的最优解

这题我们该如何贪呢?

我们先把int数组转换为string数组 

以示例2为例

3 30 34 5 9 排序哪个在前哪个在后?

3 + 30  (330)>  30 +3 (303) 那么3就在前 30在后  

该题的贪心规律就是 a+b >b+a 

通过sort 算法可以排序 

然后还有一个特列处理 就是 全是0的情况下 只返回0

代码如下

class Solution {
public:
    string largestNumber(vector<int>& nums) 
    {
      //优化
      vector<string> strs;
      for(int x:nums) strs.push_back(to_string(x));
        
      //排序
      sort(strs.begin(),strs.end(),[] (const string& s1,const string& s2)
      {
         return s1+s2>s2+s1;
      });
      //提取结果
      string ret;
      for(auto& s: strs) ret+=s;

      if(ret[0]=='0') return "0";
      else return ret;
    }
};


http://www.kler.cn/a/271361.html

相关文章:

  • <.Net>VisaulStudio2022下用VB.net实现socket与汇川PLC进行通讯案例(Eazy521)
  • 力扣每日一题 矩阵中移动的最大次数 DP
  • C#,图论与图算法,图(Graph)的数据结构设计与源代码
  • OPENCV(0-1之0.2)
  • 使用endnote插入引用文献导致word英文和数字变成符号的解决方案
  • mybatis源码阅读系列(二)
  • 已解决org.apache.zookeeper.KeeperException.InvalidACLException异常的正确解决方法,亲测有效!!!
  • 实战:django项目环境搭建(pycharm,virtualBox)
  • VS中创建C++项目(c++/cli)
  • 基于FPGA的图像锐化算法(USM)设计
  • NVENC 视频编码器 API 编程指南 ( 中文转译 )
  • Word粘贴时出现“运行时错误53,文件未找到:MathPage.WLL“的解决方案
  • ISIS接口认证实验简述
  • 缓存与内存:加速你的Python应用
  • 【安全类书籍-3】XSS跨站脚剖析与防御
  • 如何不依赖Unity直接解压unitypackage的内容
  • redis瘦身版
  • 苹果Vision Pro即将在中日韩等九国开卖 | 百能云芯
  • 提升物流效率,快递平台实战总结与分享
  • 高可用系统有哪些设计原则