news 2026/5/7 23:45:44

leetcode 767. Reorganize String 重构字符串-耗时100%

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 767. Reorganize String 重构字符串-耗时100%

Problem: 767. 重构字符串

解题过程

耗时100%,优先队列的,也就是堆的,先统计字符个数,然后放入队列中,最后拿到堆顶的字符和个数,放入结果字符串,计数-1,pop堆顶,pre = tmp,然后放入下一个字符串,之前堆顶的保存在pre中,放完下一个字符,然后将pre再次放到队列,做到拿一个,隔一个放回去,保证结果字符相邻的不相同,优先放置数量多的字符,数量少的放在中间

Code

using pr = pair<int, char>; class Solution { public: int ch[26]; string reorganizeString(string s) { priority_queue<pr, vector<pr>, less<pr>> pq; memset(ch, 0, sizeof(ch)); for(char& c : s) { ch[ c - 'a' ]++; } for(int i = 0; i < 26; i++) { if(ch[i]!=0) { pq.push({ch[i], i + 'a'}); } } pr tmp, pre={-100000,'a'}; string ret; while(!pq.empty()) { tmp = pq.top(); ret += tmp.second; // if(ret.size() > 1 && ret.back()==ret[ret.size()-2]) { // return ""; // } tmp.first--; pq.pop(); if(pre.first > 0) { pq.push(pre); } pre = tmp; } if(pre.first > 0) return ""; return ret; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 7:27:04

小程序毕设项目:基于springboot+微信小程序的闲置物品处置平台的设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/2 8:05:26

Chrome下CSS字体小于12px失效?前端开发者必看的终极解决方案

Chrome下CSS字体小于12px失效&#xff1f;前端开发者必看的终极解决方案Chrome下CSS字体小于12px失效&#xff1f;前端开发者必看的终极解决方案引言&#xff1a;为什么我的小字号在 Chrome 里“罢工”了&#xff1f;Chrome 浏览器对小字号的“特殊关照”从何而来深入理解 -web…

作者头像 李华
网站建设 2026/5/3 15:26:37

图文混排不再头疼:前端开发者高效布局实战指南

图文混排不再头疼&#xff1a;前端开发者高效布局实战指南图文混排不再头疼&#xff1a;前端开发者高效布局实战指南为什么图文混排总让人抓狂&#xff1f;对齐错乱、文字绕图不自然、响应式失效——到底谁在搞鬼&#xff1f;CSS 布局方案全景图&#xff1a;一张图看清谁擅长什…

作者头像 李华