贪心算法学习——最大数
目录
编辑
一,题目
二,题目接口
三,解题思路级代码
一,题目
给定一组非负整数
nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。
二,题目接口
class Solution {public:string largestNumber(vector<int>& nums) {}};
三,解题思路级代码
这道题其实很好解决,关键步骤如下:
1.将我们的每一个数字转换成string类型的元素(注意不要转换为char类型,因为char类型转换时看的是ASSICA码)。
2.在将我们的数字转换成为字符串以后,我们便可以使用sort函数重写一个比较函数便可以得到答案了。
比较规则:
首先我们先设两个数:a,b。先组成一个数ab.如果ab>ba那我们便可以不改变字符a和b的位置。如果ab<ba那我们就要改变位置变为ba。对于每一个字符串,sort函数都会使用字典序的方式帮我们排序。
代码如下:
class Solution { public:string largestNumber(vector<int>& nums) {vector<string>num;for(int i = 0;i<nums.size();i++)//将数字转换成为string类型。{num.push_back(to_string(nums[i])) ;}sort(num.begin(),num.end(),[](const string& s1,const string& s2)//重新实现一个比较规则{return s1+s2>s2+s1;});string str;if(num[0] == "0")//如果第一个数字都是"0"的话那就肯定是一个0或者一串0的字符串。{return "0";//返回0}for(auto e:num)//如果不是那就取出str中的元素,给到str然后返回str。{str+=e;}return str;} };当然,在sort函数中重新实现的比较规则可能比较抽象,现在来个正常的:
class Solution { public:static bool compare(const string& s1,const string s2)//重定义比较函数{return s1+s2>s2+s1;}string largestNumber(vector<int>& nums) {vector<string>ret;for(int i = 0;i<nums.size();i++){ret.push_back(to_string(nums[i]));}sort(ret.begin(),ret.end(), compare);//使用sort实现排序string str;for(auto& x:ret){str+=x;}if(str[0] == '0'){return "0";}return str;} };
相关文章:
贪心算法学习——最大数
目录 编辑 一,题目 二,题目接口 三,解题思路级代码 一,题目 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。 注意:输出结果可能非常大…...
next项目部署到云服务器上(手动)
准备环境: 云服务器 ECS,服务器安装好了docker 自己的next项目 开始: 1.在next项目根目录下创建Dockerfile文件 FROM node:18-alpine AS base# Install dependencies only when needed FROM base AS deps # Check https://github.com/nodejs/docker-node/tree/b4117f9333d…...
CG Magic分享3dmax软件安装与打开文件转圈圈怎么办?
大家使用3dmax软件时,尤其,是初学者无论是安装3dmax软件还是打开max文件时,会遇到一类问题: 3dmax一直转圈不动? 3dmax总是转圈怎么办 大家遇到3dmax一直转圈圈是如何解决的呢?小编这里整理了一些3dmax软…...
京东(天猫)数据分析:2023下半年茶饮料市场高速增长,东方树叶一骑绝尘
当前在食品饮料行业中,整体的增长放缓,且各个细分品类上都已经充分竞争。但茶饮料市场例外,近两年呈现高增长的态势,一来取决于行业头部企业也在积极推动茶饮料不断升级,另外是主打更健康、更时尚的茶饮料深受年轻消费…...
软件测试之【单元测试、系统测试、集成测试】
一、单元测试的概念 单元测试(Unit Testing)是对软件基本组成单元进行的测试,如函数(function或procedure)或一个类的方法(method)。当然这里的基本单元不仅仅指的是一个函数或者方法ÿ…...
安装 tensorflow==1.15.2 遇见的问题
一、直接安装 命令:pip install tensorflow1.15.2 二、换 阿里云 镜像源 命令:pip install -i http://mirrors.aliyun.com/pypi/simple tensorflow1.15.2 三、换 豆瓣 镜像源 命令:pip install http://pypi.douban.com/simple tensorflow1…...
OJ刷题 第十八篇(递归篇)
34101 - 全排列问题(目前遇到最难的一个递归) 时间限制 : 1 秒 内存限制 : 128 MB 输出自然数 1 到 n 所有不重复的排列,即 n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。 输入 n(1≤n≤9) 输出 由 1…...
互联网产品说明书指南,附撰写流程与方法
产品说明书,对于普通产品而言,再常见不过。药物、电器、电子产品等产品在正式出售时,往往都会附带一份产品说明书,以此告诉用户这个产品的功能与特性,并指导用户如何来使用这个产品。 产品说明书 那么,对于…...
从JVM方面解释java传递问题
前言: Java传递问题,网上解释的比较多,大多是从代码和传递的规范的层次来解释。前段时间,自己也一直在思考这个问题,大部分的解释让我很难印象深刻,经常忘,刚好看过一点jvm方面的书,…...
Oracle查询用户所有表的语句
下面为您介绍的语句用于实现Oracle查询用户所有表,如果您对oracle查询方面感兴趣的话,不妨一看。 -- 查询所有用户的表,视图等 select * from all_tab_comments -- 查询本用户的表,视图等 select * from user_tab_comments --查询所有用户的表的列…...
Python轮廓追踪【OpenCV形态学操作】
文章目录 概要代码运行结果 概要 一些理论知识 OpenCV形态学操作理论1 OpenCV形态学操作理论2 OpenCV轮廓操作|轮廓类似详解 代码 代码如下,可以直接运行 import cv2 as cv# 定义结构元素 kernel cv.getStructuringElement(cv.MORPH_RECT, (3, 3)) # print kern…...
安全狗安装
安装waf 关闭apache程序及httpd.exe进程; 运行cmd,cd进入apache/bin文件夹目录, 执行httpd.exe -k install -n apache2.4.39; 启动apache,启动phpstudy 安全狗安装服务名称填写apache2.4.39; 安装安全狗之后就会提示报错 可以设备黑白名单...
HTTP发起请求与收到响应的大致过程
可以《《透视 HTTP 协议》Windows 10 搭建最小实验环境》搭建环境,之后才能进行下边的操作。 1.鼠标左键点击两下www目录下的start.bat批处理文件。 2.打开Wireshark,然后选择Adapter for loopback traffic capture。 3.然后把tcp.port 80 || udp.…...
c++继承的小细节
子类不会继承父类的构造函数,但是会调用父类无参数的构造函数。调用父类构造方法,可以在子类的构造函数后加冒号和要调用的构造方法。子类转化为父类,或者父类转换为子类后,虚函数列表也被转换。...
【分享】7-Zip压缩包的密码可以取消吗?
7-Zip压缩包设置了“密码保护”,后面又不想要了,可以取消吗? 首先,我们要分两种情况来看,是记得密码,但不想每次打开压缩包都要输入密码,所以想取消密码,还是把密码忘记了所以想取消…...
learning rate
这里写目录标题 learning rate单一固定(one-size-fits-all)的学习率Model训练到驻点很困难(学习率太大不能收敛,学习率太小收敛太慢) 如何客制化学习率?- 引入参数σσ常见的计算方式 - Root mean square&a…...
小型气象站数据采集网关准确监测雨量和风速
随着科技的发展,人们对天气信息的需求也愈发增加。天气是每个人生活中不可或缺的一部分,了解准确的天气信息有助于我们做出合理的决策和安排。在小型气象站数据采集中,一个关键的环节是监测雨量和风速。而小型气象站数据采集网关的出现&#…...
C++常见容器实现原理
引言 如果有一天!你骄傲离去!(抱歉搞错了)如果有一天,你在简历上写下了这段话: 那么你不得不在面试前实现一下STL常见的容器了。C的常用容器有:vector、string、deque、stack、queue、list、se…...
Mysql数据库 5.SQL语言聚合函数 语言日期-字符串函数
一、聚合函数 SQL中提供了一些可以对查询的记录的列进行计算的函数——聚合函数 1.count() 统计函数,统计满足条件的指定字符的值的个数 统计表中rebirth_mood个数 select count(列名) from 表名; #统计表中rebirth_namelcl的个数 select …...
使用Linux JumpServer 堡垒机进行远程访问
文章目录 前言1. 安装Jump server2. 本地访问jump server3. 安装 cpolar内网穿透软件4. 配置Jump server公网访问地址5. 公网远程访问Jump server6. 固定Jump server公网地址 前言 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpS…...
OpenClaw与Qwen3-14B联调指南:解决模型响应超时与截断问题
OpenClaw与Qwen3-14B联调指南:解决模型响应超时与截断问题 1. 问题背景与挑战 上周我在尝试用OpenClaw自动化处理一批技术文档时,遇到了一个棘手的问题:当任务链超过5个步骤时,Qwen3-14B模型经常出现响应超时或输出截断。这直接…...
Legacy iOS Kit终极指南:解锁旧iOS设备的完整控制权
Legacy iOS Kit终极指南:解锁旧iOS设备的完整控制权 【免费下载链接】Legacy-iOS-Kit An all-in-one tool to restore/downgrade, save SHSH blobs, jailbreak legacy iOS devices, and more 项目地址: https://gitcode.com/gh_mirrors/le/Legacy-iOS-Kit 在…...
Realistic Vision V5.1虚拟摄影棚快速上手:新手3步生成比肩单反的人像
Realistic Vision V5.1虚拟摄影棚快速上手:新手3步生成比肩单反的人像 1. 为什么选择Realistic Vision V5.1虚拟摄影棚 如果你一直想尝试专业级人像摄影,但又苦于没有昂贵的单反设备和摄影棚,Realistic Vision V5.1虚拟摄影棚就是为你量身定…...
MCP 实现深度技术报告
1. MCP 协议概述与架构定位 1.1 协议背景 Model Context Protocol (MCP) 是 Anthropic 推出的开放标准协议,旨在标准化 AI 助手与外部数据源、工具之间的集成方式。在 Claude Code 中,MCP 不仅是外部集成接口,更是核心架构组件,…...
Axios遭供应链投毒攻击(附排查与紧急补救指南)
每周下载3亿次的Axios遭供应链投毒攻击,附排查与修复指南 事件概述 2026 年 3 月 31 日,著名云安全平台 StepSecurity 监测到,在 JavaScript 生态系统中最受欢迎的 HTTP 客户端库 Axios(每周下载量超 3 亿次)遭遇了严重…...
Phi-4-mini-reasoning企业知识库接入:PDF解析+向量化+推理问答闭环
Phi-4-mini-reasoning企业知识库接入:PDF解析向量化推理问答闭环 1. 模型简介与部署验证 Phi-4-mini-reasoning 是一个基于合成数据构建的轻量级开源模型,专注于高质量、密集推理的数据处理能力。作为Phi-4模型家族成员,它特别强化了数学推…...
PlugY终极指南:暗黑破坏神2单机模式完全解放方案
PlugY终极指南:暗黑破坏神2单机模式完全解放方案 【免费下载链接】PlugY PlugY, The Survival Kit - Plug-in for Diablo II Lord of Destruction 项目地址: https://gitcode.com/gh_mirrors/pl/PlugY 还在为暗黑破坏神2单机模式的储物箱空间不足而烦恼吗&am…...
极客玩法:OpenClaw+Qwen3-14B控制智能家居实战
极客玩法:OpenClawQwen3-14B控制智能家居实战 1. 为什么选择OpenClaw控制智能家居? 去年装修新房时,我给自己定了个小目标:所有智能设备必须能通过自然语言控制。市面上的语音助手总让我觉得"差点意思"——要么响应慢…...
Qwen3.5-9B开源可部署实践:国产昇腾910B适配方案(CANN+PyTorch NPU移植)
Qwen3.5-9B开源可部署实践:国产昇腾910B适配方案(CANNPyTorch NPU移植) 1. 项目概述 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型,具备强大的逻辑推理、代码生成和多轮对话能力。该模型特别针对国产昇腾910B处理器进行了优化…...
【仅限高级Java架构师查阅】Java外部函数安全沙箱构建指南:禁用dlopen/dlsym、符号白名单校验、Rust FFI桥接实践(含SPI自定义ClassLoader隔离方案)
第一章:Java外部函数优化Java外部函数接口(Foreign Function & Memory API,即JEP 454/459/460/461/462)自JDK 22起正式成为标准特性,为Java与本地代码(如C/C库)的高效互操作提供了零拷贝、类…...
