剑指Offer-第16天 排序(简单)

剑指Offer-第16天 排序(简单)

第一题

题目链接:https://leetcode.cn/problems/ba-shu-zu-pai-cheng-zui-xiao-de-shu-lcof/

个人题解:按照字符串相加小的来排序即可

代码:

class Solution {public:    string minNumber(vector<int>& nums) {        vector<string> vec;        for(auto x:nums) vec.push_back(to_string(x));        sort(vec.begin(),vec.end(),[&](auto a,auto b){            return a+b<b+a;        });        string res;        for(auto x:vec) res+=x;        return res;    }};

第二题

题目链接:https://leetcode.cn/problems/bu-ke-pai-zhong-de-shun-zi-lcof/

个人题解:

  1. 不能相邻一样
  2. 相邻两数的差值不能超过 \(0\) 的个数

代码:

class Solution {public:    bool isStraight(vector<int>& nums) {        sort(nums.begin(),nums.end());        int cnt=0;        for(int i=0;i<4;i++){            if(nums[i]==0) cnt++;            else{                if(nums[i+1]==nums[i]) return false;                if(nums[i+1]-nums[i]-1>cnt) return false;                cnt-=(nums[i+1]-nums[i]-1);            }        }        return true;    }};

运行截图

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部