LeetCode每日一题

3216. 交换后字典序最小的字符串

java 复制代码
class Solution {
    public String getSmallestString(String s) {
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            int number1 = c - '0';
            if (i == s.length() - 1) {
                return s;
            }
            c = s.charAt(i + 1);
                int number2 = c - '0';
            if (((number1 % 2 == 0 && number2 % 2 == 0) || (number1 % 2 != 0 && number2 % 2 != 0)) && number1 > number2) {
                s = swap(i, s);
                return s;
            }
        }
        return s;   
    }

    public String swap(int i, String s) {
        byte[] bytes = s.getBytes();
        byte temp = bytes[i + 1];
        bytes[i + 1] = bytes[i];
        bytes[i] = temp;
        return new String(bytes);

    }
}
相关推荐
Тиё Сиротака1 小时前
红包分配算法的严格数学理论与完整实现
算法
x***38162 小时前
springboot和springframework版本依赖关系
java·spring boot·后端
S***84882 小时前
SpringSecurity踢出指定用户
java
p***s912 小时前
Spring数据库原理 之 DataSource
java·数据库·spring
adobehu2 小时前
麒麟系统安装jdk17
java·jdk
potato_may2 小时前
链式二叉树 —— 用指针构建的树形世界
c语言·数据结构·算法·链表·二叉树
spencer_tseng2 小时前
java.util.IllegalFormatPrecisionException
java·printf
虹科网络安全2 小时前
艾体宝干货 | Redis Java 开发系列#1 从零开始的环境搭建与实践指南
java·数据库·redis
铅笔侠_小龙虾3 小时前
Arthas 命令
java·jvm
java修仙传3 小时前
每日一题,力扣560. 和为 K 的子数组
算法·leetcode