240 发简信
IP属地:湖南
  • 120
    一键切换Java Jdk厂商/版本BAT脚本

    使用图例 代码项目地址 直接上链接Github[https://github.com/NotoChen/JavaVersionChoice] 脚本内容 拓展 下载安装其他厂商...

  • import java.util.regex.*;

    class Solution {
    public int countAsterisks(String s) {
    Pattern pattern = Pattern.compile("\\|.*?\\|"); // 正则表达式匹配 |...| 之间的内容
    Matcher matcher = pattern.matcher(s);

    int res = 0;
    while (matcher.find()) {
    String match = matcher.group(); // 获取匹配的字符串
    res += countAsterisksInSegment(match); // 统计每个匹配段中的星号数目
    }

    return res;
    }

    private int countAsterisksInSegment(String segment) {
    int count = 0;
    for (char c : segment.toCharArray()) {
    if (c == '*') {
    count++;
    }
    }
    return count;
    }
    }

    【算法题】2315. 统计星号

    题目: 给你一个字符串 s ,每 两个 连续竖线 '|' 为 一对 。换言之,第一个和第二个 '|' 为一对,第三个和第四个 '|' 为一对,以此类推。 请你返回 不在 竖线...

  • class Solution {
    public int balancedString(String s) {
    int n = s.length();
    int target = n / 4;
    int[] count = new int[4]; // 记录每种字符的出现次数
    int result = n; // 初始化结果为整个字符串长度
    int left = 0;

    // 统计每种字符的出现次数
    for (char c : s.toCharArray()) {
    if (c == 'Q') {
    count[0]++;
    } else if (c == 'W') {
    count[1]++;
    } else if (c == 'E') {
    count[2]++;
    } else if (c == 'R') {
    count[3]++;
    }
    }

    // 如果每种字符的出现次数都是n的1/4,说明已经是平衡字符串,直接返回0
    if (count[0] == target && count[1] == target && count[2] == target && count[3] == target) {
    return 0;
    }

    for (int right = 0; right < n; right++) {
    // 缩小窗口,更新右指针所对应的字符的出现次数
    char rc = s.charAt(right);
    count[rc == 'Q' ? 0 : (rc == 'W' ? 1 : (rc == 'E' ? 2 : 3))]--;

    // 当窗口中的字符出现次数都小于等于n的1/4时,左指针右移,扩大窗口
    while (left <= right && count[0] <= target && count[1] <= target && count[2] <= target && count[3] <= target) {
    result = Math.min(result, right - left + 1);
    char lc = s.charAt(left);
    count[lc == 'Q' ? 0 : (lc == 'W' ? 1 : (lc == 'E' ? 2 : 3))]++;
    left++;
    }
    }

    return result;
    }
    }

    LeetCode #1234 Replace the Substring for Balanced String 替换子串得到平衡字符串

    1234 Replace the Substring for Balanced String 替换子串得到平衡字符串 Description: You are given a...

  • #include <vector>

    int countNegatives(std::vector<std::vector<int>>& grid) {
    int m = grid.size();
    int n = grid[0].size();
    int count = 0;

    for (int i = 0; i < m; i++) {
    int left = 0;
    int right = n - 1;

    while (left <= right) {
    int mid = left + (right - left) / 2;

    if (grid[i][mid] < 0) {
    right = mid - 1;
    } else {
    left = mid + 1;
    }
    }

    count += (n - left);
    }

    return count;
    }
    双指针法
    这种方法在每一行的负数个数上效率更高。

    1351. 统计有序矩阵中的负数

    1.题目 给你一个 m * n 的矩阵 grid,矩阵中的元素无论是按行还是按列,都以非递增顺序排列。 请你统计并返回 grid 中 负数 的数目。 示例 1:输入:grid...

  • PageHelper在SpringBoot+MyBatis中合理且规范的使用方法

    PageHelper 一. 开发准备 原创标识[https://blog.csdn.net/NOT_TWO_CHEN] 1. 开发工具 IntelliJ IDEA 2020....