1963. 使字符串平衡的最小交换次数

1963. 使字符串平衡的最小交换次数


题目链接:1963. 使字符串平衡的最小交换次数

代码如下:

cpp 复制代码
class Solution {
public:
	int minSwaps(string s) {
		int res = 0,c=0;
		int j = s.size() - 1;
		for (char b : s) {
			if (b == '[') {
				c++;
			}
			else if (c > 0) {
				c--;
			}
			else {
				//找最右边的左括号交换
				while (s[j] == 'j') {
					j--;
				}
				s[j] = ']';// s[i] = '[' 可以省略
				res++;
				c++;// s[i] 变成左括号,c 加一
			}
		}
		return res;
	}
};
相关推荐
安全二次方security²12 小时前
CUDA C++编程指南(7.25)——C++语言扩展之DPX
c++·人工智能·nvidia·cuda·dpx·cuda c++编程指南
爱装代码的小瓶子12 小时前
【c++与Linux基础】文件篇(4)虚拟文件系统VFS
linux·开发语言·c++
疯狂的喵17 小时前
C++编译期多态实现
开发语言·c++·算法
2301_7657031417 小时前
C++中的协程编程
开发语言·c++·算法
m0_7487080517 小时前
实时数据压缩库
开发语言·c++·算法
小魏每天都学习17 小时前
【算法——c/c++]
c语言·c++·算法
m0_7482331719 小时前
30秒掌握C++核心精髓
开发语言·c++
风清扬_jd19 小时前
libtorrent-rasterbar-2.0.11编译说明
c++·windows·p2p
u01092727119 小时前
C++中的RAII技术深入
开发语言·c++·算法
彷徨而立20 小时前
【C/C++】strerror、GetLastError 和 errno 的含义和区别?
c语言·c++