648. 单词替换
- 题号:648
- 来源:LeetCode
- 难度:中等
- 标签:
队列贪心字符串 - 语言:TypeScript
- 解法:1 个
- 作者:lmliheng
- 最近更新:2026-09-27
TypeScript · O(n) 时间 · O(n) 空间 · 更新于 2026-09-27
两队列存下标,小者禁言对方(非648)
typescript
/**
* @difficulty medium
* @tags 队列,贪心,字符串
* @time O(n)
* @space O(n)
* @note 两队列存下标,小者禁言对方(非648)
* @648. 单词替换
*/
/**
* @param {string} senate
* @return {string}
*/
var predictPartVictory = function (senate: string): string {
// rdd
// rrdd
let n = senate.length
let r: number[] = []
let d: number[] = []
for (let i = 0; i < n; i++) {
if (senate[i] === 'R') {
r.push(i)
} else {
d.push(i)
}
}
console.log(r, d)
while (r.length !== 0 && d.length !== 0) {
//。。。
let a = r.shift()!
let b = d.shift()!
if (a < b) {
r.push(a + n)
} else {
d.push(b + n)
}
}
return r.length === 0 ? "Dire" : "Radiant"
};在 GitHub 上查看题目所在目录:lmliheng/algorithm