LeetCode - 1702. 修改后的最大二进制字符串

文章目录


题目链接:LeetCode - 1702. 修改后的最大二进制字符串


解析

详细题解:贪心,简洁写法(Python/Java/C++/Go/JS/Rust)

思路很牛b。

简单来说我们需要想办法将0配对,将其变为10,对于单个的0,我们需要用10->01这个操作将后面的0冒泡到前面进行配对。


AC CODE

cpp 复制代码
char* maximumBinaryString(char* binary) {
    int n = strlen(binary);
    int cnt = 0;
    int mark = 0;
    for(int i = 0; i < n; ++i){
        if(binary[i] == '0') mark = 1;
        if(mark && binary[i] == '1') cnt++;
    }

    if(cnt == 0 && mark == 0) return binary;

    for(int i = 1; i <= n; ++i){
        if(i == n - cnt) binary[i - 1] = '0';
        else binary[i - 1] = '1';
    }

    return binary;
}
相关推荐
Boop_wu17 小时前
[Java EE] 多线程编程初阶
java·jvm·算法
cpp_250118 小时前
P1765 手机
数据结构·c++·算法·题解·洛谷
未到结局,焉知生死18 小时前
PAT每日三题11-20
c++·算法
Aaron158819 小时前
通用的通感控算存一体化平台设计方案
linux·人工智能·算法·fpga开发·硬件工程·射频工程·基带工程
胡童嘉19 小时前
长沙烈焰鸟网络科技有限公司实习day13日记
功能测试·学习·职场和发展·游戏引擎·cocos2d
_w_z_j_19 小时前
拼三角(枚举)
算法
hweiyu0019 小时前
数据结构和算法分类
数据结构·算法·分类
M K Q19 小时前
2025.9 GESP三级 日历制作
算法
x***J34820 小时前
算法竞赛训练方法
算法
前端小L20 小时前
图论专题(十六):“依赖”的死结——用拓扑排序攻克「课程表」
数据结构·算法·深度优先·图论·宽度优先